p_table <- function(tab_data, ...) {
tab_data_2 <- deparse(substitute(tab_data))
table_p <- do.call(CreateTableOne,
list(data = as.name(tab_data_2), includeNA = TRUE, ...))
table_p_out <- print(table_p,
showAllLevels = TRUE,
printToggle = FALSE)
kable(table_p_out,
align = "c")
}
uni_var <- function(test_var, data_imp) {
cat("_________________________________________________")
cat("\n")
cat(" \n##", test_var)
cat("\n")
cat("_________________________________________________")
cat("\n")
f <- as.formula(paste("Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS == 0)",
as.name(test_var),
sep = " ~ " ))
data_imp_2 <- deparse(substitute(data_imp))
km_fit <- do.call("survfit", list(formula = f, data = as.name(data_imp_2)))
print(km_fit)
cat("\n")
print(summary(km_fit, times = c(12, 24, 36, 48, 60, 120)))
cat("\n")
cat("\n")
cat("\n")
cat(" \n## Univariable Cox Proportional Hazard Model for: ", test_var)
cat("\n")
cat("\n")
n_levels <- nlevels(data_imp[[test_var]])
if(n_levels == 1){
print("Only one level, no Cox model performed")
cat("\n")
} else {
cox_fit <- do.call("coxph", list(formula = f, data = as.name(data_imp_2)))
print(summary(cox_fit))
cat("\n")
do.call("ggforest",
list(model = cox_fit, data = as.name(data_imp_2)))
}
cat("\n")
cat("\n")
cat("\n")
cat(" \n## Unadjusted Kaplan Meier Overall Survival Curve for: ", test_var)
p <- do.call("ggsurvplot",
list(fit = km_fit, data = as.name(data_imp_2),
palette = "jco", censor = FALSE, legend = "right",
linetype = "strata", xlab = "Time (Months)"))
print(p)
}
col.width <- c(37, 10, 1, 1, 3, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 8, 2, 2, 2, 4, 4, 1, 4, 1, 1,
1, 3, 2, 2, 8, 2, 5, 5, 5, 4, 5, 5, 5,4, 2, 1, 2, 1, 3, 1, 1, 1, 1, 1, 1, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 8,
8, 8, 2, 1, 1, 1, 1, 8, 1, 1, 8, 1, 1, 2, 2, 5, 2, 5, 3, 1, 3, 1, 8, 8, 2, 8,
2, 8, 2, 2, 1, 8, 1, 1, 1, 1, 1, 8, 1, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 3, 1, 1,
1, 1, 1, 1, 1, 1, 1)
col.names.abr <- c("PUF_CASE_ID", "PUF_FACILITY_ID", "FACILITY_TYPE_CD", "FACILITY_LOCATION_CD",
"AGE", "SEX", "RACE", "SPANISH_HISPANIC_ORIGIN", "INSURANCE_STATUS",
"MED_INC_QUAR_00", "NO_HSD_QUAR_00", "UR_CD_03", "MED_INC_QUAR_12", "NO_HSD_QUAR_12",
"UR_CD_13", "CROWFLY", "CDCC_TOTAL_BEST", "SEQUENCE_NUMBER", "CLASS_OF_CASE",
"YEAR_OF_DIAGNOSIS", "PRIMARY_SITE", "LATERALITY", "HISTOLOGY", "BEHAVIOR", "GRADE",
"DIAGNOSTIC_CONFIRMATION", "TUMOR_SIZE", "REGIONAL_NODES_POSITIVE",
"REGIONAL_NODES_EXAMINED", "DX_STAGING_PROC_DAYS", "RX_SUMM_DXSTG_PROC", "TNM_CLIN_T",
"TNM_CLIN_N", "TNM_CLIN_M", "TNM_CLIN_STAGE_GROUP", "TNM_PATH_T", "TNM_PATH_N", "TNM_PATH_M",
"TNM_PATH_STAGE_GROUP", "TNM_EDITION_NUMBER", "ANALYTIC_STAGE_GROUP", "CS_METS_AT_DX",
"CS_METS_EVAL", "CS_EXTENSION", "CS_TUMOR_SIZEEXT_EVAL", "CS_METS_DX_BONE", "CS_METS_DX_BRAIN",
"CS_METS_DX_LIVER", "CS_METS_DX_LUNG", "LYMPH_VASCULAR_INVASION", "CS_SITESPECIFIC_FACTOR_1",
"CS_SITESPECIFIC_FACTOR_2", "CS_SITESPECIFIC_FACTOR_3", "CS_SITESPECIFIC_FACTOR_4",
"CS_SITESPECIFIC_FACTOR_5", "CS_SITESPECIFIC_FACTOR_6", "CS_SITESPECIFIC_FACTOR_7",
"CS_SITESPECIFIC_FACTOR_8", "CS_SITESPECIFIC_FACTOR_9", "CS_SITESPECIFIC_FACTOR_10",
"CS_SITESPECIFIC_FACTOR_11", "CS_SITESPECIFIC_FACTOR_12", "CS_SITESPECIFIC_FACTOR_13",
"CS_SITESPECIFIC_FACTOR_14", "CS_SITESPECIFIC_FACTOR_15", "CS_SITESPECIFIC_FACTOR_16",
"CS_SITESPECIFIC_FACTOR_17", "CS_SITESPECIFIC_FACTOR_18", "CS_SITESPECIFIC_FACTOR_19",
"CS_SITESPECIFIC_FACTOR_20", "CS_SITESPECIFIC_FACTOR_21", "CS_SITESPECIFIC_FACTOR_22",
"CS_SITESPECIFIC_FACTOR_23", "CS_SITESPECIFIC_FACTOR_24", "CS_SITESPECIFIC_FACTOR_25",
"CS_VERSION_LATEST", "DX_RX_STARTED_DAYS", "DX_SURG_STARTED_DAYS", "DX_DEFSURG_STARTED_DAYS",
"RX_SUMM_SURG_PRIM_SITE", "RX_HOSP_SURG_APPR_2010", "RX_SUMM_SURGICAL_MARGINS",
"RX_SUMM_SCOPE_REG_LN_SUR", "RX_SUMM_SURG_OTH_REGDIS", "SURG_DISCHARGE_DAYS", "READM_HOSP_30_DAYS",
"REASON_FOR_NO_SURGERY", "DX_RAD_STARTED_DAYS", "RX_SUMM_RADIATION", "RAD_LOCATION_OF_RX",
"RAD_TREAT_VOL", "RAD_REGIONAL_RX_MODALITY", "RAD_REGIONAL_DOSE_CGY", "RAD_BOOST_RX_MODALITY",
"RAD_BOOST_DOSE_CGY", "RAD_NUM_TREAT_VOL", "RX_SUMM_SURGRAD_SEQ", "RAD_ELAPSED_RX_DAYS",
"REASON_FOR_NO_RADIATION", "DX_SYSTEMIC_STARTED_DAYS", "DX_CHEMO_STARTED_DAYS", "RX_SUMM_CHEMO",
"DX_HORMONE_STARTED_DAYS", "RX_SUMM_HORMONE", "DX_IMMUNO_STARTED_DAYS", "RX_SUMM_IMMUNOTHERAPY",
"RX_SUMM_TRNSPLNT_ENDO", "RX_SUMM_SYSTEMIC_SUR_SEQ", "DX_OTHER_STARTED_DAYS", "RX_SUMM_OTHER",
"PALLIATIVE_CARE", "RX_SUMM_TREATMENT_STATUS", "PUF_30_DAY_MORT_CD", "PUF_90_DAY_MORT_CD",
"DX_LASTCONTACT_DEATH_MONTHS", "PUF_VITAL_STATUS", "RX_HOSP_SURG_PRIM_SITE", "RX_HOSP_CHEMO",
"RX_HOSP_IMMUNOTHERAPY", "RX_HOSP_HORMONE", "RX_HOSP_OTHER", "PUF_MULT_SOURCE", "REFERENCE_DATE_FLAG",
"RX_SUMM_SCOPE_REG_LN_2012", "RX_HOSP_DXSTG_PROC", "PALLIATIVE_CARE_HOSP", "TUMOR_SIZE_SUMMARY",
"METS_AT_DX_OTHER", "METS_AT_DX_DISTANT_LN", "METS_AT_DX_BONE", "METS_AT_DX_BRAIN",
"METS_AT_DX_LIVER", "METS_AT_DX_LUNG", "NO_HSD_QUAR_16", "MED_INC_QUAR_16", "MEDICAID_EXPN_CODE")
#Read in data for each subsite
lip <- read_fwf('NCDBPUF_Lip.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
melanoma <- read_fwf('NCDBPUF_Melanoma.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
skin <- read_fwf('NCDBPUF_OtSkin.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
hodgextr <- read_fwf('NCDBPUF_HodgExtr.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
hodgndal <- read_fwf('NCDBPUF_HodgNdal.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
NHLndal <- read_fwf('NCDBPUF_NHLNdal.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
breast <- read_fwf('NCDBPUF_Breast.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
vulva <- read_fwf('NCDBPUF_Vulva.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
vagina <- read_fwf('NCDBPUF_Vagina.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
penis <- read_fwf('NCDBPUF_Penis.3.2016.0.dat',
fwf_widths(col.width, col_names = col.names.abr),
col_types = cols(.default = col_character()))
#Combine data for all subsites
dat <- bind_rows(lip, melanoma, skin, hodgextr, hodgndal, NHLndal, breast,
vulva, vagina, penis)
rm(lip, melanoma, skin, hodgextr, hodgndal, NHLndal, breast, vulva, vagina, penis)
prim_site_text <- data_frame(PRIMARY_SITE =
#lip
c("C000", "C001", "C002", "C003", "C004", "C005",
"C006", "C008", "C009",
#skin/melanoma
"C440", "C441", "C442", "C443", "C444", "C445",
"C446", "C447", "C448", "C449",
#breast - nipple
"C500",
#vagina/vulva
"C510", "C511", "C512", "C518", "C519", "C529",
#penis
"C600", "C601", "C602", "C608", "C609", "C639"
),
SITE_TEXT = c(
#lip
"C00.0 External Lip: Upper NOS",
"C00.1 External Lip: Lower NOS",
"C00.2 External Lip: NOS",
"C00.3 Lip: Upper Mucosa",
"C00.4 Lip: Lower Mucosa",
"C00.5 Lip: Mucosa NOS",
"C00.6 Lip: Commissure",
"C00.8 Lip: Overlapping",
"C00.9 Lip, NOS",
#skin
"C44.0 Skin of lip, NOS",
"C44.1 Eyelid",
"C44.2 External ear",
"C44.3 Skin of ear and unspecified parts of face",
"C44.4 Skin of scalp and neck",
"C44.5 Skin of trunk",
"C44.6 Skin of upper limb and shoulder",
"C44.7 Skin of lower limb and hip",
"C44.8 Overlapping lesion of skin",
"C44.9 Skin, NOS",
#breast
"C50.0 Nipple",
#vulva/vagina
"C51.0 Labium majus",
"C51.1 Labium minus",
"C51.2 Clitoris",
"C51.8 Overlapping lesion of vulva",
"C51.9 Vulva, NOS",
"C52.9 Vagina, NOS",
#penis
"C60.0 Prepuce",
"C60.1 Glans penis",
"C60.2 Body of penis",
"C60.8 Overlapping lesion of penis",
"C60.9 Penis",
"C63.2 Scrotum, NOS"))
dat <- merge(dat, prim_site_text, by = "PRIMARY_SITE", all.x = TRUE)
rm(prim_site_text)
# convert numeric variables from character class to numeric class
num_vars <- c("AGE", "CROWFLY", "TUMOR_SIZE", "DX_STAGING_PROC_DAYS", "DX_RX_STARTED_DAYS", "DX_SURG_STARTED_DAYS",
"DX_DEFSURG_STARTED_DAYS", "SURG_DISCHARGE_DAYS", "DX_RAD_STARTED_DAYS", "RAD_REGIONAL_DOSE_CGY",
"RAD_BOOST_DOSE_CGY", "RAD_ELAPSED_RX_DAYS", "DX_SYSTEMIC_STARTED_DAYS", "DX_CHEMO_STARTED_DAYS",
"DX_HORMONE_STARTED_DAYS", "DX_OTHER_STARTED_DAYS", "DX_LASTCONTACT_DEATH_MONTHS",
"RAD_NUM_TREAT_VOL")
dat[num_vars] <- lapply(dat[num_vars], as.numeric)
# convert factor variables from character class to factor class
vars <- names(dat)
fact_vars <- vars[!(vars %in% num_vars)] # basically all of the non-numerics
dat[fact_vars] <- lapply(dat[fact_vars], as.character)
dat[fact_vars] <- lapply(dat[fact_vars], as.factor)
dat <- dat %>%
mutate(FACILITY_TYPE_F = fct_recode(FACILITY_TYPE_CD,
"Community Cancer Program" = "1",
"Comprehensive Comm Ca Program" = "2",
"Academic/Research Program" = "3",
"Integrated Network Ca Program" = "4",
"Other" = "9")) %>%
mutate(FACILITY_LOCATION_F = fct_recode(FACILITY_LOCATION_CD,
"New England" = "1",
"Middle Atlantic" = "2",
"South Atlantic" = "3",
"East North Central" = "4",
"East South Central" = "5",
"West North Central" = "6",
"West South Central" = "7",
"Mountain" = "8",
"Pacific" = "9",
"out of US" = "0")) %>%
mutate(FACILITY_GEOGRAPHY = fct_collapse(FACILITY_LOCATION_CD,
"Northeast" = c("1", "2"),
"South" = c("3", "7"),
"Midwest" = c("4", "5", "6"),
"West" = c("8", "9"))) %>%
mutate(AGE_F = cut(AGE, c(0, 54, 64, 74, 100))) %>%
mutate(AGE_40 = cut(AGE, c(0, 40, 100))) %>%
mutate(SEX_F = fct_recode(SEX,
"Male" = "1",
"Female" = "2")) %>%
mutate(RACE_F = fct_collapse(RACE,
"White" = c("01"),
"Black" = c("02"),
"Asian" = c("04", "05", "06", "07", "08", "10", "11", "12", "13", "14", "15",
"16", "17", "20", "21", "22", "25", "26", "27", "28", "30", "31",
"32", "96", "97"),
"Other/Unk" = c("03", "98", "99"))) %>%
mutate(HISPANIC = fct_collapse(SPANISH_HISPANIC_ORIGIN,
"Yes" = c("1", "2", "3", "4", "5", "6", "7", "8"),
"No" = c("0"),
"Unknown" = c("9"))) %>%
mutate(INSURANCE_F = fct_recode(INSURANCE_STATUS,
"None" = "0",
"Private" = "1",
"Medicaid" = "2",
"Medicare" = "3",
"Other Government" = "4",
"Unknown" = "9")) %>%
mutate(INSURANCE_F = fct_relevel(INSURANCE_F,
"Private")) %>%
mutate(INCOME_F = fct_recode(MED_INC_QUAR_12,
"Less than $38,000" = "1",
"$38,000 - $47,999" = "2",
"$48,000 - $62,999" = "3",
"$63,000 +" = "4")) %>%
mutate(EDUCATION_F = fct_recode(NO_HSD_QUAR_12,
"21% or more" = "1",
"13 - 20.9%" = "2",
"7 - 12.9%" = "3",
"Less than 7%" = "4")) %>%
mutate(U_R_F = fct_collapse(UR_CD_13,
"Metro" = c("1", "2", "3"),
"Urban" = c("4", "5", "6", "7"),
"Rural" = c("8", "9"))) %>%
mutate(CLASS_OF_CASE_F = fct_collapse(CLASS_OF_CASE,
All_Part_Prim = c("10", "11", "12", "13",
"14", "20", "21", "22"),
Other_Facility = c("00"))) %>%
mutate(GRADE_F = fct_recode(GRADE,
"Gr I: Well Diff" = "1",
"Gr II: Mod Diff" = "2",
"Gr III: Poor Diff" = "3",
"Gr IV: Undiff/Anaplastic" = "4",
"NA/Unkown" = "9")) %>%
mutate(HISTOLOGY_F = fct_infreq(HISTOLOGY)) %>%
mutate(HISTOLOGY_F = factor(HISTOLOGY_F)) %>%
mutate(HISTOLOGY_F_LIM = fct_lump(HISTOLOGY_F, prop = 0.05)) %>%
mutate(TNM_CLIN_T = fct_recode(TNM_CLIN_T,
"N_A" = "88")) %>%
mutate(TNM_CLIN_T = fct_relevel(TNM_CLIN_T,
"1")) %>%
mutate(TNM_CLIN_N = fct_recode(TNM_CLIN_N,
"N_A" = "88")) %>%
mutate(TNM_CLIN_M = fct_recode(TNM_CLIN_M,
"N_A" = "88")) %>%
mutate(TNM_PATH_T = fct_recode(TNM_PATH_T,
"N_A" = "88")) %>%
mutate(TNM_PATH_T = fct_relevel(TNM_PATH_T,
"1")) %>%
mutate(TNM_PATH_N = fct_recode(TNM_PATH_N,
"N_A" = "88")) %>%
mutate(TNM_PATH_M = fct_recode(TNM_PATH_M,
"N_A" = "88")) %>%
mutate(TNM_CLIN_STAGE_GROUP = fct_recode(TNM_CLIN_STAGE_GROUP,
"N_A" = "88")) %>%
mutate(TNM_PATH_STAGE_GROUP = fct_recode(TNM_PATH_STAGE_GROUP,
"N_A" = "88")) %>%
mutate(MARGINS = fct_recode(RX_SUMM_SURGICAL_MARGINS,
"No Residual" = "0",
"Residual, NOS" = "1",
"Microscopic Resid" = "2",
"Macroscopic Resid" = "3",
"Not evaluable" = "7",
"No surg" = "8",
"Unknown" = "9")) %>%
mutate(MARGINS_YN = fct_collapse(RX_SUMM_SURGICAL_MARGINS,
"Yes" = c("1", "2", "3"),
"No" = c("0"),
"No surg/Unk/NA" = c("7", "8", "9"))) %>%
mutate(READM_HOSP_30_DAYS_F = fct_recode(READM_HOSP_30_DAYS,
"No_Surg_or_No_Readmit" = "0",
"Unplan_Readmit_Same" = "1",
"Plan_Readmit_Same" = "2",
"PlanUnplan_Same" = "3",
"Unknown" = "4")) %>%
mutate(RX_SUMM_RADIATION_F = fct_recode(RX_SUMM_RADIATION,
"None" = "0",
"Beam Radiation" = "1",
"Radioactive Implants" = "2",
"Radioisotopes" = "3",
"Beam + Imp or Isotopes" = "4",
"Radiation, NOS" = "5",
"Unknown" = "9")) %>%
mutate(PUF_30_DAY_MORT_CD_F = fct_recode(PUF_30_DAY_MORT_CD,
"Alive_30" = "0",
"Dead_30" = "1",
"Unknown" = "9")) %>%
mutate(PUF_90_DAY_MORT_CD_F = fct_recode(PUF_90_DAY_MORT_CD,
"Alive_90" = "0",
"Dead_90" = "1",
"Unknown" = "9")) %>%
mutate(LYMPH_VASCULAR_INVASION_F = fct_recode(LYMPH_VASCULAR_INVASION,
"Neg_LymphVasc_Inv" = "0",
"Pos_LumphVasc_Inv" = "1",
"N_A" = "8",
"Unknown" = "9")) %>%
mutate(RX_HOSP_SURG_APPR_2010_F = fct_recode(RX_HOSP_SURG_APPR_2010,
"No_Surg" = "0",
"Robot_Assist" = "1",
"Robot_to_Open" = "2",
"Endo_Lap" = "3",
"Endo_Lap_to_Open" = "4",
"Open_Unknown" = "5",
"Unknown" = "9")) %>%
mutate(All = "All") %>%
mutate(All = factor(All)) %>%
mutate(REASON_FOR_NO_SURGERY_F = fct_recode(REASON_FOR_NO_SURGERY,
"Surg performed" = "0",
"Surg not recommended" = "1",
"No surg due to pt factors" = "2",
"No surg, pt died" = "5",
"Surg rec, not done" = "6",
"Surg rec, pt refused" = "7",
"Surg rec, unk if done" = "8",
"Unknown" = "9")) %>%
mutate(SURGERY_YN = ifelse(REASON_FOR_NO_SURGERY == "0",
"Yes",
ifelse(REASON_FOR_NO_SURGERY == "9",
"Ukn",
"No"))) %>%
mutate(SURG_TF = case_when(SURGERY_YN == "Yes" ~ TRUE,
SURGERY_YN == "No" ~ FALSE,
TRUE ~ NA)) %>%
mutate(REASON_FOR_NO_RADIATION_F = fct_recode(REASON_FOR_NO_RADIATION,
"Rad performed" = "0",
"Rad not recommended" = "1",
"No Rad due to pt factors" = "2",
"No Rad, pt died" = "5",
"Rad rec, not done" = "6",
"Rad rec, pt refused" = "7",
"Rad rec, unk if done" = "8",
"Unknown" = "9")) %>%
mutate(RADIATION_YN = ifelse(REASON_FOR_NO_RADIATION == "0",
"Yes",
ifelse(REASON_FOR_NO_RADIATION == "9",
NA,
"No"))) %>%
mutate(SURGRAD_SEQ_F = fct_recode(RX_SUMM_SURGRAD_SEQ,
"None or Surg or Rad" = "0",
"Rad before Surg" = "2",
"Surg before Rad" = "3",
"Rad before and after Surg" = "4",
"Intraop Rad" = "5",
"Intraop Rad plus other" = "6",
"Unknown" = "9")) %>%
mutate(SURG_RAD_SEQ = ifelse(SURGERY_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0",
"Surg Alone",
ifelse(RADIATION_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0",
"Rad Alone",
ifelse(SURGERY_YN == "No" & RADIATION_YN == "No" & RX_SUMM_SURGRAD_SEQ == "0",
"No Treatment",
ifelse(RX_SUMM_SURGRAD_SEQ == "2",
"Rad then Surg",
ifelse(RX_SUMM_SURGRAD_SEQ == "3",
"Surg then Rad",
ifelse(RX_SUMM_SURGRAD_SEQ == "4",
"Rad before and after Surg",
"Other"))))))) %>%
mutate(SURG_RAD_SEQ = fct_relevel(SURG_RAD_SEQ,
"Surg Alone",
"Surg then Rad",
"Rad Alone")) %>%
mutate(CHEMO_YN = fct_collapse(RX_SUMM_CHEMO,
"No" = c("00", "82", "85", "86", "87"),
"Yes" = c("01", "02", "03"),
"Ukn" = c("88", "99"))) %>%
mutate(SURG_RAD_SEQ_C = ifelse(SURGERY_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "No",
"Surg, No rad, No Chemo",
ifelse(RADIATION_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "No",
"Rad, No Surg, No Chemo",
ifelse(SURGERY_YN == "No" & RADIATION_YN == "No" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "No",
"No Surg, No Rad, No Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "2" & CHEMO_YN == "No",
"Rad then Surg, No Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "3" & CHEMO_YN == "No",
"Surg then Rad, No Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "4" & CHEMO_YN == "No",
"Rad before and after Surg, No Chemo",
ifelse(SURGERY_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "Yes",
"Surg, No rad, Yes Chemo",
ifelse(RADIATION_YN == "Yes" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "Yes",
"Rad, No Surg, Yes Chemo",
ifelse(SURGERY_YN == "No" & RADIATION_YN == "No" & RX_SUMM_SURGRAD_SEQ == "0" & CHEMO_YN == "Yes",
"No Surg, No Rad, Yes Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "2" & CHEMO_YN == "Yes",
"Rad then Surg, Yes Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "3" & CHEMO_YN == "Yes",
"Surg then Rad, Yes Chemo",
ifelse(RX_SUMM_SURGRAD_SEQ == "4" & CHEMO_YN == "Yes",
"Rad before and after Surg, Yes Chemo",
"Other"))))))))))))) %>%
mutate(SURG_RAD_SEQ_C = fct_infreq(SURG_RAD_SEQ_C)) %>%
mutate(T_SIZE = as.numeric(TUMOR_SIZE)) %>%
mutate(T_SIZE = ifelse(T_SIZE == 0,
"No Tumor",
ifelse(T_SIZE > 0 & T_SIZE < 10 | T_SIZE == 991,
"< 1 cm",
ifelse(T_SIZE >= 10 & T_SIZE < 20 | T_SIZE == 992,
"1-2 cm",
ifelse(T_SIZE >= 20 & T_SIZE < 30 | T_SIZE == 993,
"2-3 cm",
ifelse(T_SIZE >= 30 & T_SIZE < 40 | T_SIZE == 994,
"3-4 cm",
ifelse(T_SIZE >= 40 & T_SIZE < 50 | T_SIZE == 995,
"4-5 cm",
ifelse(T_SIZE >= 50 & T_SIZE < 60 | T_SIZE == 996,
"5-6 cm",
ifelse(T_SIZE >= 60 & T_SIZE <= 987 |
T_SIZE == 980 | T_SIZE == 989 |
T_SIZE == 997,
">6 cm",
ifelse(T_SIZE == 988 | T_SIZE == 999,
"NA_unk",
"Microscopic focus")))))))))) %>%
mutate(T_SIZE = factor(T_SIZE)) %>%
mutate(T_SIZE = fct_relevel(T_SIZE,
"No Tumor", "Microscopic focus", "< 1 cm", "1-2 cm", "2-3 cm", "3-4 cm",
"4-5 cm", "5-6 cm", ">6 cm", "NA_unk")) %>%
mutate(mets_at_dx = case_when(CS_METS_DX_LUNG == "1" ~ "Lung",
CS_METS_DX_BONE == "1" ~ "Bone",
CS_METS_DX_BRAIN == "1" ~ "Brain",
CS_METS_DX_LIVER == "1" ~ "Liver",
TRUE ~ "None/Other/Unk/NA")) %>%
mutate(MEDICAID_EXPN_CODE = fct_recode(MEDICAID_EXPN_CODE,
"Non-Expansion State" = "0",
"Jan 2014 Expansion States" = "1",
"Early Expansion States (2010-13)" = "2",
"Late Expansion States (> Jan 2014)" = "3",
"Suppressed for Ages 0 - 39" = "9")) %>%
mutate(EXPN_GROUP = case_when(MEDICAID_EXPN_CODE %in% c("Jan 2014 Expansion States") &
YEAR_OF_DIAGNOSIS %in% c("2014", "2015") ~ "Post-Expansion",
MEDICAID_EXPN_CODE %in% c("Jan 2014 Expansion States") &
YEAR_OF_DIAGNOSIS %in%
c("2004", "2005", "2006", "2007", "2008",
"2009", "2010", "2011", "2012", "2013") ~ "Pre-Expansion",
MEDICAID_EXPN_CODE %in% c("Early Expansion States (2010-13)") &
YEAR_OF_DIAGNOSIS %in% c("2010", "2011", "2012", "2013", "2014", "2015") ~ "Post-Expansion",
MEDICAID_EXPN_CODE %in% c("Early Expansion States (2010-13)") &
YEAR_OF_DIAGNOSIS %in% c("2004", "2005", "2006", "2007", "2008", "2009") ~ "Pre-Expansion",
MEDICAID_EXPN_CODE %in% c("Non-Expansion State") ~ "Pre-Expansion",
MEDICAID_EXPN_CODE %in% c("Late Expansion States (> Jan 2014)") ~ "Pre-Expansion",
MEDICAID_EXPN_CODE %in% c("Late Expansion States (> Jan 2014)") &
YEAR_OF_DIAGNOSIS %in% c("2014", "2015") ~ "Exclude",
MEDICAID_EXPN_CODE == "Suppressed for Ages 0 - 39" ~ "Exclude")) %>%
mutate(pre_2014 = YEAR_OF_DIAGNOSIS %in% c("2004", "2005", "2006", "2007", "2008",
"2009", "2010", "2011", "2012", "2013")) %>%
mutate(mets_at_dx_F = ifelse(mets_at_dx == "None/Other/Unk/NA", FALSE, TRUE)) %>%
mutate(Tx_YN = ifelse(SURG_RAD_SEQ == "No Treatment" & CHEMO_YN == "No", FALSE,
ifelse(CHEMO_YN == "Ukn", NA,
TRUE)))
fact_vars_2 <- c("FACILITY_TYPE_F", "FACILITY_LOCATION_F", "AGE_F", "SEX_F", "RACE_F",
"HISPANIC", "INSURANCE_F", "INCOME_F", "EDUCATION_F", "U_R_F",
"CDCC_TOTAL_BEST", "CLASS_OF_CASE_F", "YEAR_OF_DIAGNOSIS", "PRIMARY_SITE", "HISTOLOGY",
"BEHAVIOR", "GRADE_F", "TNM_CLIN_T", "TNM_CLIN_N", "TNM_CLIN_M",
"TNM_CLIN_STAGE_GROUP", "TNM_PATH_T", "TNM_PATH_N", "TNM_PATH_M", "TNM_PATH_STAGE_GROUP",
"MARGINS", "READM_HOSP_30_DAYS_F", "RX_SUMM_RADIATION_F", "PUF_30_DAY_MORT_CD_F",
"PUF_90_DAY_MORT_CD_F", "LYMPH_VASCULAR_INVASION_F", "RX_HOSP_SURG_APPR_2010_F", "mets_at_dx")
dat <- dat %>%
mutate_at(fact_vars_2, funs(factor(.)))
Table of variables for all cases:
p_table(data,
vars = c("FACILITY_TYPE_F", "FACILITY_LOCATION_F", "FACILITY_GEOGRAPHY", "AGE", "AGE_F", "AGE_40",
"SEX_F", "RACE_F", "HISPANIC", "INSURANCE_F",
"INCOME_F", "EDUCATION_F", "U_R_F", "CROWFLY", "CDCC_TOTAL_BEST",
"SITE_TEXT", "HISTOLOGY_F_LIM", "HISTOLOGY_F", "BEHAVIOR", "GRADE_F",
"DX_STAGING_PROC_DAYS", "TNM_CLIN_T", "TNM_CLIN_N", "TNM_CLIN_M",
"TNM_CLIN_STAGE_GROUP", "TNM_PATH_T", "TNM_PATH_N", "TNM_PATH_M",
"TNM_PATH_STAGE_GROUP", "DX_RX_STARTED_DAYS", "DX_SURG_STARTED_DAYS",
"DX_DEFSURG_STARTED_DAYS", "MARGINS", "MARGINS_YN", "SURG_DISCHARGE_DAYS",
"READM_HOSP_30_DAYS_F", "RX_SUMM_RADIATION_F", "PUF_30_DAY_MORT_CD_F",
"PUF_90_DAY_MORT_CD_F", "DX_LASTCONTACT_DEATH_MONTHS",
"LYMPH_VASCULAR_INVASION_F", "RX_HOSP_SURG_APPR_2010_F", "SURG_RAD_SEQ",
"SURG_RAD_SEQ_C", "SURGERY_YN", "RADIATION_YN", "CHEMO_YN", "mets_at_dx",
"MEDICAID_EXPN_CODE", "EXPN_GROUP", "SITE_TEXT"))
The data frame does not have: SITE_TEXT.1 Dropped
| n |
|
269089 |
| FACILITY_TYPE_F (%) |
Community Cancer Program |
15035 ( 5.6) |
|
Comprehensive Comm Ca Program |
82869 ( 30.8) |
|
Academic/Research Program |
105617 ( 39.2) |
|
Integrated Network Ca Program |
27626 ( 10.3) |
|
NA |
37942 ( 14.1) |
| FACILITY_LOCATION_F (%) |
New England |
14633 ( 5.4) |
|
Middle Atlantic |
37321 ( 13.9) |
|
South Atlantic |
52385 ( 19.5) |
|
East North Central |
39474 ( 14.7) |
|
East South Central |
15651 ( 5.8) |
|
West North Central |
19556 ( 7.3) |
|
West South Central |
12471 ( 4.6) |
|
Mountain |
11965 ( 4.4) |
|
Pacific |
27691 ( 10.3) |
|
NA |
37942 ( 14.1) |
| FACILITY_GEOGRAPHY (%) |
Northeast |
51954 ( 19.3) |
|
South |
64856 ( 24.1) |
|
Midwest |
74681 ( 27.8) |
|
West |
39656 ( 14.7) |
|
NA |
37942 ( 14.1) |
| AGE (mean (sd)) |
|
58.30 (16.60) |
| AGE_F (%) |
(0,54] |
107677 ( 40.0) |
|
(54,64] |
60646 ( 22.5) |
|
(64,74] |
51176 ( 19.0) |
|
(74,100] |
49556 ( 18.4) |
|
NA |
34 ( 0.0) |
| AGE_40 (%) |
(0,40] |
41135 ( 15.3) |
|
(40,100] |
227920 ( 84.7) |
|
NA |
34 ( 0.0) |
| SEX_F (%) |
Male |
147088 ( 54.7) |
|
Female |
122001 ( 45.3) |
| RACE_F (%) |
White |
261259 ( 97.1) |
|
Black |
1814 ( 0.7) |
|
Other/Unk |
5100 ( 1.9) |
|
Asian |
916 ( 0.3) |
| HISPANIC (%) |
No |
249614 ( 92.8) |
|
Yes |
4270 ( 1.6) |
|
Unknown |
15205 ( 5.7) |
| INSURANCE_F (%) |
Private |
158775 ( 59.0) |
|
None |
7722 ( 2.9) |
|
Medicaid |
7837 ( 2.9) |
|
Medicare |
91803 ( 34.1) |
|
Other Government |
2952 ( 1.1) |
|
Unknown |
0 ( 0.0) |
| INCOME_F (%) |
Less than $38,000 |
29575 ( 11.0) |
|
$38,000 - $47,999 |
55271 ( 20.5) |
|
$48,000 - $62,999 |
73392 ( 27.3) |
|
$63,000 + |
109534 ( 40.7) |
|
NA |
1317 ( 0.5) |
| EDUCATION_F (%) |
21% or more |
27806 ( 10.3) |
|
13 - 20.9% |
58222 ( 21.6) |
|
7 - 12.9% |
93536 ( 34.8) |
|
Less than 7% |
88374 ( 32.8) |
|
NA |
1151 ( 0.4) |
| U_R_F (%) |
Metro |
220420 ( 81.9) |
|
Urban |
35956 ( 13.4) |
|
Rural |
4564 ( 1.7) |
|
NA |
8149 ( 3.0) |
| CROWFLY (mean (sd)) |
|
32.55 (105.00) |
| CDCC_TOTAL_BEST (%) |
0 |
234583 ( 87.2) |
|
1 |
27581 ( 10.2) |
|
2 |
5123 ( 1.9) |
|
3 |
1802 ( 0.7) |
| SITE_TEXT (%) |
C00.0 External Lip: Upper NOS |
6 ( 0.0) |
|
C00.1 External Lip: Lower NOS |
8 ( 0.0) |
|
C00.2 External Lip: NOS |
1 ( 0.0) |
|
C00.3 Lip: Upper Mucosa |
3 ( 0.0) |
|
C00.4 Lip: Lower Mucosa |
6 ( 0.0) |
|
C00.5 Lip: Mucosa NOS |
2 ( 0.0) |
|
C00.6 Lip: Commissure |
1 ( 0.0) |
|
C00.8 Lip: Overlapping |
0 ( 0.0) |
|
C00.9 Lip, NOS |
1 ( 0.0) |
|
C44.0 Skin of lip, NOS |
451 ( 0.2) |
|
C44.1 Eyelid |
768 ( 0.3) |
|
C44.2 External ear |
7522 ( 2.8) |
|
C44.3 Skin of ear and unspecified parts of face |
22996 ( 8.5) |
|
C44.4 Skin of scalp and neck |
20868 ( 7.8) |
|
C44.5 Skin of trunk |
84369 ( 31.4) |
|
C44.6 Skin of upper limb and shoulder |
65905 ( 24.5) |
|
C44.7 Skin of lower limb and hip |
52572 ( 19.5) |
|
C44.8 Overlapping lesion of skin |
288 ( 0.1) |
|
C44.9 Skin, NOS |
11444 ( 4.3) |
|
C50.0 Nipple |
0 ( 0.0) |
|
C51.0 Labium majus |
127 ( 0.0) |
|
C51.1 Labium minus |
96 ( 0.0) |
|
C51.2 Clitoris |
46 ( 0.0) |
|
C51.8 Overlapping lesion of vulva |
46 ( 0.0) |
|
C51.9 Vulva, NOS |
1121 ( 0.4) |
|
C52.9 Vagina, NOS |
388 ( 0.1) |
|
C60.0 Prepuce |
8 ( 0.0) |
|
C60.1 Glans penis |
13 ( 0.0) |
|
C60.2 Body of penis |
2 ( 0.0) |
|
C60.8 Overlapping lesion of penis |
1 ( 0.0) |
|
C60.9 Penis |
30 ( 0.0) |
| HISTOLOGY_F_LIM (%) |
8500 |
0 ( 0.0) |
|
8720 |
136954 ( 50.9) |
|
8520 |
0 ( 0.0) |
|
Other |
132135 ( 49.1) |
| HISTOLOGY_F (%) |
8500 |
0 ( 0.0) |
|
8720 |
136954 ( 50.9) |
|
8520 |
0 ( 0.0) |
|
8523 |
0 ( 0.0) |
|
9680 |
0 ( 0.0) |
|
8743 |
84190 ( 31.3) |
|
8522 |
0 ( 0.0) |
|
8070 |
0 ( 0.0) |
|
8742 |
12140 ( 4.5) |
|
8201 |
0 ( 0.0) |
|
8501 |
0 ( 0.0) |
|
8721 |
25612 ( 9.5) |
|
8480 |
0 ( 0.0) |
|
9663 |
0 ( 0.0) |
|
8230 |
0 ( 0.0) |
|
9690 |
0 ( 0.0) |
|
9591 |
0 ( 0.0) |
|
8010 |
0 ( 0.0) |
|
9691 |
0 ( 0.0) |
|
9650 |
0 ( 0.0) |
|
9695 |
0 ( 0.0) |
|
9673 |
0 ( 0.0) |
|
8140 |
0 ( 0.0) |
|
9699 |
0 ( 0.0) |
|
8247 |
0 ( 0.0) |
|
8507 |
0 ( 0.0) |
|
9698 |
0 ( 0.0) |
|
8211 |
0 ( 0.0) |
|
9823 |
0 ( 0.0) |
|
8071 |
0 ( 0.0) |
|
8503 |
0 ( 0.0) |
|
9670 |
0 ( 0.0) |
|
9590 |
0 ( 0.0) |
|
8050 |
0 ( 0.0) |
|
8530 |
0 ( 0.0) |
|
8575 |
0 ( 0.0) |
|
9702 |
0 ( 0.0) |
|
8524 |
0 ( 0.0) |
|
9652 |
0 ( 0.0) |
|
9687 |
0 ( 0.0) |
|
8000 |
0 ( 0.0) |
|
8832 |
0 ( 0.0) |
|
8745 |
3657 ( 1.4) |
|
8744 |
3666 ( 1.4) |
|
8772 |
0 ( 0.0) |
|
9714 |
0 ( 0.0) |
|
8401 |
0 ( 0.0) |
|
8510 |
0 ( 0.0) |
|
9689 |
0 ( 0.0) |
|
9659 |
0 ( 0.0) |
|
9705 |
0 ( 0.0) |
|
8542 |
0 ( 0.0) |
|
9671 |
0 ( 0.0) |
|
9020 |
0 ( 0.0) |
|
8521 |
0 ( 0.0) |
|
8410 |
0 ( 0.0) |
|
8504 |
0 ( 0.0) |
|
8543 |
0 ( 0.0) |
|
8541 |
0 ( 0.0) |
|
9651 |
0 ( 0.0) |
|
9120 |
0 ( 0.0) |
|
8200 |
0 ( 0.0) |
|
8540 |
0 ( 0.0) |
|
8090 |
0 ( 0.0) |
|
9596 |
0 ( 0.0) |
|
8730 |
926 ( 0.3) |
|
8723 |
945 ( 0.4) |
|
9837 |
0 ( 0.0) |
|
8255 |
0 ( 0.0) |
|
8072 |
0 ( 0.0) |
|
8051 |
0 ( 0.0) |
|
8830 |
0 ( 0.0) |
|
8890 |
0 ( 0.0) |
|
8771 |
0 ( 0.0) |
|
9665 |
0 ( 0.0) |
|
8770 |
0 ( 0.0) |
|
8083 |
0 ( 0.0) |
|
8761 |
619 ( 0.2) |
|
8409 |
0 ( 0.0) |
|
9729 |
0 ( 0.0) |
|
9684 |
0 ( 0.0) |
|
9653 |
0 ( 0.0) |
|
8246 |
0 ( 0.0) |
|
8081 |
0 ( 0.0) |
|
9667 |
0 ( 0.0) |
|
8390 |
0 ( 0.0) |
|
8022 |
0 ( 0.0) |
|
8560 |
0 ( 0.0) |
|
8407 |
0 ( 0.0) |
|
8413 |
0 ( 0.0) |
|
8980 |
0 ( 0.0) |
|
8076 |
0 ( 0.0) |
|
8260 |
0 ( 0.0) |
|
9727 |
0 ( 0.0) |
|
8490 |
0 ( 0.0) |
|
8097 |
0 ( 0.0) |
|
8740 |
214 ( 0.1) |
|
8032 |
0 ( 0.0) |
|
8800 |
0 ( 0.0) |
|
8481 |
0 ( 0.0) |
|
8402 |
0 ( 0.0) |
|
9735 |
0 ( 0.0) |
|
9679 |
0 ( 0.0) |
|
9811 |
0 ( 0.0) |
|
8802 |
0 ( 0.0) |
|
8041 |
0 ( 0.0) |
|
9675 |
0 ( 0.0) |
|
8310 |
0 ( 0.0) |
|
8513 |
0 ( 0.0) |
|
8052 |
0 ( 0.0) |
|
8033 |
0 ( 0.0) |
|
8400 |
0 ( 0.0) |
|
9716 |
0 ( 0.0) |
|
8343 |
0 ( 0.0) |
|
8801 |
0 ( 0.0) |
|
9827 |
0 ( 0.0) |
|
8574 |
0 ( 0.0) |
|
8323 |
0 ( 0.0) |
|
8408 |
0 ( 0.0) |
|
8380 |
0 ( 0.0) |
|
8074 |
0 ( 0.0) |
|
9719 |
0 ( 0.0) |
|
8046 |
0 ( 0.0) |
|
8502 |
0 ( 0.0) |
|
8430 |
0 ( 0.0) |
|
9664 |
0 ( 0.0) |
|
8094 |
0 ( 0.0) |
|
9728 |
0 ( 0.0) |
|
8572 |
0 ( 0.0) |
|
8746 |
95 ( 0.0) |
|
8982 |
0 ( 0.0) |
|
8833 |
0 ( 0.0) |
|
8570 |
0 ( 0.0) |
|
8573 |
0 ( 0.0) |
|
8123 |
0 ( 0.0) |
|
8403 |
0 ( 0.0) |
|
9678 |
0 ( 0.0) |
|
8525 |
0 ( 0.0) |
|
8722 |
59 ( 0.0) |
|
8020 |
0 ( 0.0) |
|
9738 |
0 ( 0.0) |
|
8804 |
0 ( 0.0) |
|
8021 |
0 ( 0.0) |
|
8141 |
0 ( 0.0) |
|
8550 |
0 ( 0.0) |
|
8811 |
0 ( 0.0) |
|
8315 |
0 ( 0.0) |
|
8810 |
0 ( 0.0) |
|
8075 |
0 ( 0.0) |
|
8940 |
0 ( 0.0) |
|
8012 |
0 ( 0.0) |
|
8805 |
0 ( 0.0) |
|
8143 |
0 ( 0.0) |
|
8780 |
0 ( 0.0) |
|
9717 |
0 ( 0.0) |
|
8910 |
0 ( 0.0) |
|
9180 |
0 ( 0.0) |
|
8935 |
0 ( 0.0) |
|
8147 |
0 ( 0.0) |
|
8013 |
0 ( 0.0) |
|
8460 |
0 ( 0.0) |
|
8091 |
0 ( 0.0) |
|
8120 |
0 ( 0.0) |
|
8092 |
0 ( 0.0) |
|
8240 |
0 ( 0.0) |
|
8512 |
0 ( 0.0) |
|
8854 |
0 ( 0.0) |
|
9655 |
0 ( 0.0) |
|
8073 |
0 ( 0.0) |
|
8850 |
0 ( 0.0) |
|
8571 |
0 ( 0.0) |
|
9709 |
0 ( 0.0) |
|
8891 |
0 ( 0.0) |
|
9580 |
0 ( 0.0) |
|
8035 |
0 ( 0.0) |
|
8453 |
0 ( 0.0) |
|
8950 |
0 ( 0.0) |
|
8562 |
0 ( 0.0) |
|
8441 |
0 ( 0.0) |
|
9737 |
0 ( 0.0) |
|
8852 |
0 ( 0.0) |
|
9708 |
0 ( 0.0) |
|
8851 |
0 ( 0.0) |
|
9540 |
0 ( 0.0) |
|
8082 |
0 ( 0.0) |
|
8420 |
0 ( 0.0) |
|
8249 |
0 ( 0.0) |
|
8741 |
12 ( 0.0) |
|
8004 |
0 ( 0.0) |
|
9724 |
0 ( 0.0) |
|
8077 |
0 ( 0.0) |
|
9718 |
0 ( 0.0) |
|
8920 |
0 ( 0.0) |
|
8983 |
0 ( 0.0) |
|
9260 |
0 ( 0.0) |
|
9700 |
0 ( 0.0) |
|
8001 |
0 ( 0.0) |
|
8508 |
0 ( 0.0) |
|
9133 |
0 ( 0.0) |
|
8080 |
0 ( 0.0) |
|
8900 |
0 ( 0.0) |
|
9044 |
0 ( 0.0) |
|
8098 |
0 ( 0.0) |
|
8084 |
0 ( 0.0) |
|
8341 |
0 ( 0.0) |
|
9071 |
0 ( 0.0) |
|
8005 |
0 ( 0.0) |
|
8144 |
0 ( 0.0) |
|
8210 |
0 ( 0.0) |
|
8896 |
0 ( 0.0) |
|
8933 |
0 ( 0.0) |
|
8963 |
0 ( 0.0) |
|
8154 |
0 ( 0.0) |
|
9220 |
0 ( 0.0) |
|
8711 |
0 ( 0.0) |
|
8894 |
0 ( 0.0) |
|
8045 |
0 ( 0.0) |
|
9654 |
0 ( 0.0) |
|
8320 |
0 ( 0.0) |
|
8514 |
0 ( 0.0) |
|
8815 |
0 ( 0.0) |
|
9473 |
0 ( 0.0) |
|
8440 |
0 ( 0.0) |
|
8803 |
0 ( 0.0) |
|
8840 |
0 ( 0.0) |
|
9130 |
0 ( 0.0) |
|
9150 |
0 ( 0.0) |
|
9701 |
0 ( 0.0) |
|
8031 |
0 ( 0.0) |
|
8130 |
0 ( 0.0) |
|
8314 |
0 ( 0.0) |
|
8858 |
0 ( 0.0) |
|
9812 |
0 ( 0.0) |
|
8124 |
0 ( 0.0) |
|
8263 |
0 ( 0.0) |
|
8470 |
0 ( 0.0) |
|
9040 |
0 ( 0.0) |
|
9560 |
0 ( 0.0) |
|
8243 |
0 ( 0.0) |
|
8450 |
0 ( 0.0) |
|
8030 |
0 ( 0.0) |
|
8078 |
0 ( 0.0) |
|
8190 |
0 ( 0.0) |
|
8251 |
0 ( 0.0) |
|
8406 |
0 ( 0.0) |
|
9100 |
0 ( 0.0) |
|
8290 |
0 ( 0.0) |
|
8461 |
0 ( 0.0) |
|
8774 |
0 ( 0.0) |
|
8901 |
0 ( 0.0) |
|
8936 |
0 ( 0.0) |
|
8093 |
0 ( 0.0) |
|
8102 |
0 ( 0.0) |
|
8148 |
0 ( 0.0) |
|
8825 |
0 ( 0.0) |
|
8931 |
0 ( 0.0) |
|
8951 |
0 ( 0.0) |
|
9364 |
0 ( 0.0) |
|
9597 |
0 ( 0.0) |
|
9662 |
0 ( 0.0) |
|
8261 |
0 ( 0.0) |
|
8384 |
0 ( 0.0) |
|
8773 |
0 ( 0.0) |
|
9041 |
0 ( 0.0) |
|
9110 |
0 ( 0.0) |
|
8011 |
0 ( 0.0) |
|
8110 |
0 ( 0.0) |
|
8344 |
0 ( 0.0) |
|
8452 |
0 ( 0.0) |
|
8806 |
0 ( 0.0) |
|
9170 |
0 ( 0.0) |
|
9231 |
0 ( 0.0) |
|
9726 |
0 ( 0.0) |
|
9814 |
0 ( 0.0) |
|
9816 |
0 ( 0.0) |
|
9817 |
0 ( 0.0) |
|
8014 |
0 ( 0.0) |
|
8095 |
0 ( 0.0) |
|
8340 |
0 ( 0.0) |
|
8482 |
0 ( 0.0) |
|
8726 |
0 ( 0.0) |
|
8835 |
0 ( 0.0) |
|
8855 |
0 ( 0.0) |
|
8902 |
0 ( 0.0) |
|
8912 |
0 ( 0.0) |
|
8930 |
0 ( 0.0) |
|
9181 |
0 ( 0.0) |
|
9813 |
0 ( 0.0) |
|
9815 |
0 ( 0.0) |
|
8015 |
0 ( 0.0) |
|
8042 |
0 ( 0.0) |
|
8053 |
0 ( 0.0) |
|
8170 |
0 ( 0.0) |
|
8252 |
0 ( 0.0) |
|
8253 |
0 ( 0.0) |
|
8262 |
0 ( 0.0) |
|
8620 |
0 ( 0.0) |
|
8710 |
0 ( 0.0) |
|
8760 |
0 ( 0.0) |
|
8836 |
0 ( 0.0) |
|
8895 |
0 ( 0.0) |
|
9043 |
0 ( 0.0) |
|
9182 |
0 ( 0.0) |
|
9240 |
0 ( 0.0) |
|
9561 |
0 ( 0.0) |
|
9581 |
0 ( 0.0) |
|
9661 |
0 ( 0.0) |
|
9818 |
0 ( 0.0) |
|
8003 |
0 ( 0.0) |
|
8100 |
0 ( 0.0) |
|
8121 |
0 ( 0.0) |
|
8131 |
0 ( 0.0) |
|
8145 |
0 ( 0.0) |
|
8150 |
0 ( 0.0) |
|
8231 |
0 ( 0.0) |
|
8245 |
0 ( 0.0) |
|
8270 |
0 ( 0.0) |
|
8312 |
0 ( 0.0) |
|
8313 |
0 ( 0.0) |
|
8319 |
0 ( 0.0) |
|
8332 |
0 ( 0.0) |
|
8347 |
0 ( 0.0) |
|
8350 |
0 ( 0.0) |
|
8471 |
0 ( 0.0) |
|
8576 |
0 ( 0.0) |
|
8583 |
0 ( 0.0) |
|
8700 |
0 ( 0.0) |
|
8750 |
0 ( 0.0) |
|
8823 |
0 ( 0.0) |
|
8831 |
0 ( 0.0) |
|
8853 |
0 ( 0.0) |
|
8941 |
0 ( 0.0) |
|
8990 |
0 ( 0.0) |
|
9000 |
0 ( 0.0) |
|
9061 |
0 ( 0.0) |
|
9064 |
0 ( 0.0) |
|
9080 |
0 ( 0.0) |
|
9085 |
0 ( 0.0) |
|
9102 |
0 ( 0.0) |
|
9105 |
0 ( 0.0) |
|
9183 |
0 ( 0.0) |
|
9186 |
0 ( 0.0) |
|
9251 |
0 ( 0.0) |
|
9370 |
0 ( 0.0) |
|
9371 |
0 ( 0.0) |
|
9451 |
0 ( 0.0) |
|
9530 |
0 ( 0.0) |
| BEHAVIOR (%) |
2 |
0 ( 0.0) |
|
3 |
269089 (100.0) |
| GRADE_F (%) |
Gr I: Well Diff |
589 ( 0.2) |
|
Gr II: Mod Diff |
816 ( 0.3) |
|
Gr III: Poor Diff |
1497 ( 0.6) |
|
Gr IV: Undiff/Anaplastic |
521 ( 0.2) |
|
5 |
0 ( 0.0) |
|
6 |
0 ( 0.0) |
|
7 |
0 ( 0.0) |
|
8 |
0 ( 0.0) |
|
NA/Unkown |
265666 ( 98.7) |
| DX_STAGING_PROC_DAYS (mean (sd)) |
|
3.22 (53.98) |
| TNM_CLIN_T (%) |
N_A |
1574 ( 0.6) |
|
c0 |
3237 ( 1.2) |
|
c1 |
14071 ( 5.2) |
|
c1A |
39363 ( 14.6) |
|
c1B |
15597 ( 5.8) |
|
c1C |
0 ( 0.0) |
|
c1MI |
0 ( 0.0) |
|
c2 |
4134 ( 1.5) |
|
c2A |
25371 ( 9.4) |
|
c2B |
6395 ( 2.4) |
|
c2C |
0 ( 0.0) |
|
c3 |
2398 ( 0.9) |
|
c3A |
9810 ( 3.6) |
|
c3B |
7776 ( 2.9) |
|
c4 |
1674 ( 0.6) |
|
c4A |
4516 ( 1.7) |
|
c4B |
8256 ( 3.1) |
|
c4C |
0 ( 0.0) |
|
c4D |
0 ( 0.0) |
|
cX |
115943 ( 43.1) |
|
pA |
0 ( 0.0) |
|
pIS |
1760 ( 0.7) |
|
NA |
7214 ( 2.7) |
| TNM_CLIN_N (%) |
N_A |
1573 ( 0.6) |
|
c0 |
180888 ( 67.2) |
|
c1 |
4432 ( 1.6) |
|
c1A |
1030 ( 0.4) |
|
c1B |
1267 ( 0.5) |
|
c2 |
905 ( 0.3) |
|
c2A |
342 ( 0.1) |
|
c2B |
658 ( 0.2) |
|
c2C |
630 ( 0.2) |
|
c3 |
2102 ( 0.8) |
|
c3A |
0 ( 0.0) |
|
c3B |
0 ( 0.0) |
|
c3C |
0 ( 0.0) |
|
cX |
69105 ( 25.7) |
|
NA |
6157 ( 2.3) |
| TNM_CLIN_M (%) |
N_A |
1573 ( 0.6) |
|
c0 |
245302 ( 91.2) |
|
c0I+ |
0 ( 0.0) |
|
c1 |
3446 ( 1.3) |
|
c1A |
1045 ( 0.4) |
|
c1B |
1379 ( 0.5) |
|
c1C |
4150 ( 1.5) |
|
NA |
12194 ( 4.5) |
| TNM_CLIN_STAGE_GROUP (%) |
0 |
2401 ( 0.9) |
|
1 |
8331 ( 3.1) |
|
1A |
68926 ( 25.6) |
|
1B |
47613 ( 17.7) |
|
1C |
0 ( 0.0) |
|
2 |
1514 ( 0.6) |
|
2A |
16357 ( 6.1) |
|
2B |
11360 ( 4.2) |
|
2C |
5992 ( 2.2) |
|
3 |
8770 ( 3.3) |
|
3A |
0 ( 0.0) |
|
3B |
0 ( 0.0) |
|
3C |
0 ( 0.0) |
|
4 |
10283 ( 3.8) |
|
4A |
2 ( 0.0) |
|
4B |
0 ( 0.0) |
|
4C |
1 ( 0.0) |
|
N_A |
1583 ( 0.6) |
|
99 |
85926 ( 31.9) |
|
NA |
30 ( 0.0) |
| TNM_PATH_T (%) |
N_A |
1571 ( 0.6) |
|
p0 |
3652 ( 1.4) |
|
p1 |
8932 ( 3.3) |
|
p1A |
43424 ( 16.1) |
|
p1B |
17703 ( 6.6) |
|
p1C |
0 ( 0.0) |
|
p1MI |
0 ( 0.0) |
|
p2 |
2844 ( 1.1) |
|
p2A |
30821 ( 11.5) |
|
p2B |
6903 ( 2.6) |
|
p3 |
1857 ( 0.7) |
|
p3A |
12774 ( 4.7) |
|
p3B |
9644 ( 3.6) |
|
p4 |
1215 ( 0.5) |
|
p4A |
6629 ( 2.5) |
|
p4B |
11783 ( 4.4) |
|
p4C |
0 ( 0.0) |
|
p4D |
0 ( 0.0) |
|
pA |
0 ( 0.0) |
|
pIS |
936 ( 0.3) |
|
pX |
97279 ( 36.2) |
|
NA |
11122 ( 4.1) |
| TNM_PATH_N (%) |
N_A |
1569 ( 0.6) |
|
p0 |
121211 ( 45.0) |
|
p0I- |
0 ( 0.0) |
|
p0I+ |
0 ( 0.0) |
|
p0M- |
0 ( 0.0) |
|
p0M+ |
0 ( 0.0) |
|
p1 |
3607 ( 1.3) |
|
p1A |
8421 ( 3.1) |
|
p1B |
1951 ( 0.7) |
|
p1C |
0 ( 0.0) |
|
p1MI |
0 ( 0.0) |
|
p2 |
1104 ( 0.4) |
|
p2A |
2858 ( 1.1) |
|
p2B |
1480 ( 0.6) |
|
p2C |
1242 ( 0.5) |
|
p3 |
3849 ( 1.4) |
|
p3A |
0 ( 0.0) |
|
p3B |
0 ( 0.0) |
|
p3C |
0 ( 0.0) |
|
pX |
101133 ( 37.6) |
|
NA |
20664 ( 7.7) |
| TNM_PATH_M (%) |
N_A |
1552 ( 0.6) |
|
p1 |
1529 ( 0.6) |
|
p1A |
828 ( 0.3) |
|
p1B |
626 ( 0.2) |
|
p1C |
1687 ( 0.6) |
|
pX |
116236 ( 43.2) |
|
NA |
146631 ( 54.5) |
| TNM_PATH_STAGE_GROUP (%) |
0 |
1898 ( 0.7) |
|
1 |
6027 ( 2.2) |
|
1A |
63103 ( 23.5) |
|
1B |
53543 ( 19.9) |
|
1C |
0 ( 0.0) |
|
2 |
1254 ( 0.5) |
|
2A |
17789 ( 6.6) |
|
2B |
12097 ( 4.5) |
|
2C |
6201 ( 2.3) |
|
3 |
5432 ( 2.0) |
|
3A |
8067 ( 3.0) |
|
3B |
7374 ( 2.7) |
|
3C |
5149 ( 1.9) |
|
4 |
5747 ( 2.1) |
|
4A |
7 ( 0.0) |
|
4B |
0 ( 0.0) |
|
4C |
1 ( 0.0) |
|
N_A |
1576 ( 0.6) |
|
99 |
65711 ( 24.4) |
|
NA |
8113 ( 3.0) |
| DX_RX_STARTED_DAYS (mean (sd)) |
|
10.76 (27.08) |
| DX_SURG_STARTED_DAYS (mean (sd)) |
|
10.12 (25.88) |
| DX_DEFSURG_STARTED_DAYS (mean (sd)) |
|
31.11 (34.24) |
| MARGINS (%) |
No Residual |
244357 ( 90.8) |
|
Residual, NOS |
3777 ( 1.4) |
|
Microscopic Resid |
3812 ( 1.4) |
|
Macroscopic Resid |
296 ( 0.1) |
|
Not evaluable |
746 ( 0.3) |
|
No surg |
12757 ( 4.7) |
|
Unknown |
3344 ( 1.2) |
| MARGINS_YN (%) |
No |
244357 ( 90.8) |
|
Yes |
7885 ( 2.9) |
|
No surg/Unk/NA |
16847 ( 6.3) |
| SURG_DISCHARGE_DAYS (mean (sd)) |
|
1.75 (9.08) |
| READM_HOSP_30_DAYS_F (%) |
No_Surg_or_No_Readmit |
257592 ( 95.7) |
|
Unplan_Readmit_Same |
2551 ( 0.9) |
|
Plan_Readmit_Same |
3999 ( 1.5) |
|
PlanUnplan_Same |
395 ( 0.1) |
|
9 |
4552 ( 1.7) |
| RX_SUMM_RADIATION_F (%) |
None |
258472 ( 96.1) |
|
Beam Radiation |
8638 ( 3.2) |
|
Radioactive Implants |
68 ( 0.0) |
|
Radioisotopes |
5 ( 0.0) |
|
Beam + Imp or Isotopes |
46 ( 0.0) |
|
Radiation, NOS |
85 ( 0.0) |
|
Unknown |
1775 ( 0.7) |
| PUF_30_DAY_MORT_CD_F (%) |
Alive_30 |
248786 ( 92.5) |
|
Dead_30 |
551 ( 0.2) |
|
Unknown |
6802 ( 2.5) |
|
NA |
12950 ( 4.8) |
| PUF_90_DAY_MORT_CD_F (%) |
Alive_90 |
243303 ( 90.4) |
|
Dead_90 |
1737 ( 0.6) |
|
Unknown |
11099 ( 4.1) |
|
NA |
12950 ( 4.8) |
| DX_LASTCONTACT_DEATH_MONTHS (mean (sd)) |
|
55.61 (41.49) |
| LYMPH_VASCULAR_INVASION_F (%) |
Neg_LymphVasc_Inv |
106669 ( 39.6) |
|
Pos_LumphVasc_Inv |
5852 ( 2.2) |
|
N_A |
34 ( 0.0) |
|
Unknown |
36814 ( 13.7) |
|
NA |
119720 ( 44.5) |
| RX_HOSP_SURG_APPR_2010_F (%) |
No_Surg |
14021 ( 5.2) |
|
Robot_Assist |
117 ( 0.0) |
|
Robot_to_Open |
28 ( 0.0) |
|
Endo_Lap |
356 ( 0.1) |
|
Endo_Lap_to_Open |
131 ( 0.0) |
|
Open_Unknown |
134691 ( 50.1) |
|
Unknown |
25 ( 0.0) |
|
NA |
119720 ( 44.5) |
| SURG_RAD_SEQ (%) |
Surg Alone |
249888 ( 92.9) |
|
Surg then Rad |
4529 ( 1.7) |
|
Rad Alone |
4187 ( 1.6) |
|
No Treatment |
8084 ( 3.0) |
|
Other |
2299 ( 0.9) |
|
Rad before and after Surg |
15 ( 0.0) |
|
Rad then Surg |
87 ( 0.0) |
| SURG_RAD_SEQ_C (%) |
Surg, No rad, No Chemo |
240119 ( 89.2) |
|
Surg then Rad, No Chemo |
3653 ( 1.4) |
|
Surg then Rad, Yes Chemo |
736 ( 0.3) |
|
Surg, No rad, Yes Chemo |
3131 ( 1.2) |
|
No Surg, No Rad, Yes Chemo |
1704 ( 0.6) |
|
No Surg, No Rad, No Chemo |
6106 ( 2.3) |
|
Other |
9453 ( 3.5) |
|
Rad, No Surg, Yes Chemo |
1543 ( 0.6) |
|
Rad, No Surg, No Chemo |
2542 ( 0.9) |
|
Rad then Surg, Yes Chemo |
31 ( 0.0) |
|
Rad then Surg, No Chemo |
56 ( 0.0) |
|
Rad before and after Surg, Yes Chemo |
0 ( 0.0) |
|
Rad before and after Surg, No Chemo |
15 ( 0.0) |
| SURGERY_YN (%) |
No |
12368 ( 4.6) |
|
Ukn |
510 ( 0.2) |
|
Yes |
256211 ( 95.2) |
| RADIATION_YN (%) |
No |
258334 ( 96.0) |
|
Yes |
8842 ( 3.3) |
|
NA |
1913 ( 0.7) |
| CHEMO_YN (%) |
No |
253329 ( 94.1) |
|
Yes |
7241 ( 2.7) |
|
Ukn |
8519 ( 3.2) |
| mets_at_dx (%) |
Bone |
552 ( 0.2) |
|
Brain |
681 ( 0.3) |
|
Liver |
412 ( 0.2) |
|
Lung |
2504 ( 0.9) |
|
None/Other/Unk/NA |
264940 ( 98.5) |
| MEDICAID_EXPN_CODE (%) |
Non-Expansion State |
83879 ( 31.2) |
|
Jan 2014 Expansion States |
71602 ( 26.6) |
|
Early Expansion States (2010-13) |
43372 ( 16.1) |
|
Late Expansion States (> Jan 2014) |
32294 ( 12.0) |
|
Suppressed for Ages 0 - 39 |
37942 ( 14.1) |
| EXPN_GROUP (%) |
Exclude |
37942 ( 14.1) |
|
Post-Expansion |
39323 ( 14.6) |
|
Pre-Expansion |
191824 ( 71.3) |
| SITE_TEXT (%) |
C00.0 External Lip: Upper NOS |
6 ( 0.0) |
|
C00.1 External Lip: Lower NOS |
8 ( 0.0) |
|
C00.2 External Lip: NOS |
1 ( 0.0) |
|
C00.3 Lip: Upper Mucosa |
3 ( 0.0) |
|
C00.4 Lip: Lower Mucosa |
6 ( 0.0) |
|
C00.5 Lip: Mucosa NOS |
2 ( 0.0) |
|
C00.6 Lip: Commissure |
1 ( 0.0) |
|
C00.8 Lip: Overlapping |
0 ( 0.0) |
|
C00.9 Lip, NOS |
1 ( 0.0) |
|
C44.0 Skin of lip, NOS |
451 ( 0.2) |
|
C44.1 Eyelid |
768 ( 0.3) |
|
C44.2 External ear |
7522 ( 2.8) |
|
C44.3 Skin of ear and unspecified parts of face |
22996 ( 8.5) |
|
C44.4 Skin of scalp and neck |
20868 ( 7.8) |
|
C44.5 Skin of trunk |
84369 ( 31.4) |
|
C44.6 Skin of upper limb and shoulder |
65905 ( 24.5) |
|
C44.7 Skin of lower limb and hip |
52572 ( 19.5) |
|
C44.8 Overlapping lesion of skin |
288 ( 0.1) |
|
C44.9 Skin, NOS |
11444 ( 4.3) |
|
C50.0 Nipple |
0 ( 0.0) |
|
C51.0 Labium majus |
127 ( 0.0) |
|
C51.1 Labium minus |
96 ( 0.0) |
|
C51.2 Clitoris |
46 ( 0.0) |
|
C51.8 Overlapping lesion of vulva |
46 ( 0.0) |
|
C51.9 Vulva, NOS |
1121 ( 0.4) |
|
C52.9 Vagina, NOS |
388 ( 0.1) |
|
C60.0 Prepuce |
8 ( 0.0) |
|
C60.1 Glans penis |
13 ( 0.0) |
|
C60.2 Body of penis |
2 ( 0.0) |
|
C60.8 Overlapping lesion of penis |
1 ( 0.0) |
|
C60.9 Penis |
30 ( 0.0) |
p_table(no_Excludes,
vars = c("FACILITY_TYPE_F", "FACILITY_LOCATION_F", "FACILITY_GEOGRAPHY", "AGE", "AGE_F", "AGE_40",
"SEX_F", "RACE_F", "HISPANIC", "INSURANCE_F",
"INCOME_F", "EDUCATION_F", "U_R_F", "CROWFLY", "CDCC_TOTAL_BEST",
"SITE_TEXT", "HISTOLOGY_F_LIM", "HISTOLOGY_F", "BEHAVIOR", "GRADE_F",
"DX_STAGING_PROC_DAYS", "TNM_CLIN_T", "TNM_CLIN_N", "TNM_CLIN_M",
"TNM_CLIN_STAGE_GROUP", "TNM_PATH_T", "TNM_PATH_N", "TNM_PATH_M",
"TNM_PATH_STAGE_GROUP", "DX_RX_STARTED_DAYS", "DX_SURG_STARTED_DAYS",
"DX_DEFSURG_STARTED_DAYS", "MARGINS", "MARGINS_YN", "SURG_DISCHARGE_DAYS",
"READM_HOSP_30_DAYS_F", "RX_SUMM_RADIATION_F", "PUF_30_DAY_MORT_CD_F",
"PUF_90_DAY_MORT_CD_F", "DX_LASTCONTACT_DEATH_MONTHS",
"LYMPH_VASCULAR_INVASION_F", "RX_HOSP_SURG_APPR_2010_F", "SURG_RAD_SEQ",
"SURG_RAD_SEQ_C", "T_SIZE", "SURGERY_YN", "RADIATION_YN", "CHEMO_YN", "mets_at_dx",
"MEDICAID_EXPN_CODE","SITE_TEXT"),
strata = "EXPN_GROUP")
The data frame does not have: SITE_TEXT.1 Dropped
| n |
|
40765 |
201262 |
|
|
| FACILITY_TYPE_F (%) |
Community Cancer Program |
2404 ( 5.9) |
13221 ( 6.6) |
<0.001 |
|
|
Comprehensive Comm Ca Program |
13293 ( 32.6) |
73088 ( 36.3) |
|
|
|
Academic/Research Program |
21865 ( 53.6) |
88862 ( 44.2) |
|
|
|
Integrated Network Ca Program |
3203 ( 7.9) |
26091 ( 13.0) |
|
|
| FACILITY_LOCATION_F (%) |
New England |
4060 ( 10.0) |
11185 ( 5.6) |
<0.001 |
|
|
Middle Atlantic |
8697 ( 21.3) |
30179 ( 15.0) |
|
|
|
South Atlantic |
1736 ( 4.3) |
53330 ( 26.5) |
|
|
|
East North Central |
4276 ( 10.5) |
36885 ( 18.3) |
|
|
|
East South Central |
951 ( 2.3) |
15730 ( 7.8) |
|
|
|
West North Central |
5041 ( 12.4) |
15398 ( 7.7) |
|
|
|
West South Central |
97 ( 0.2) |
13018 ( 6.5) |
|
|
|
Mountain |
1735 ( 4.3) |
10876 ( 5.4) |
|
|
|
Pacific |
14172 ( 34.8) |
14661 ( 7.3) |
|
|
| FACILITY_GEOGRAPHY (%) |
Northeast |
12757 ( 31.3) |
41364 ( 20.6) |
<0.001 |
|
|
South |
1833 ( 4.5) |
66348 ( 33.0) |
|
|
|
Midwest |
10268 ( 25.2) |
68013 ( 33.8) |
|
|
|
West |
15907 ( 39.0) |
25537 ( 12.7) |
|
|
| AGE (mean (sd)) |
|
63.64 (12.73) |
62.63 (12.98) |
<0.001 |
|
| AGE_F (%) |
(0,54] |
10962 ( 26.9) |
62153 ( 30.9) |
<0.001 |
|
|
(54,64] |
11191 ( 27.5) |
52555 ( 26.1) |
|
|
|
(64,74] |
9704 ( 23.8) |
43888 ( 21.8) |
|
|
|
(74,100] |
8908 ( 21.9) |
42666 ( 21.2) |
|
|
| AGE_40 (%) |
(0,40] |
452 ( 1.1) |
2924 ( 1.5) |
<0.001 |
|
|
(40,100] |
40313 ( 98.9) |
198338 ( 98.5) |
|
|
| SEX_F (%) |
Male |
23459 ( 57.5) |
116717 ( 58.0) |
0.098 |
|
|
Female |
17306 ( 42.5) |
84545 ( 42.0) |
|
|
| RACE_F (%) |
White |
39584 ( 97.1) |
195620 ( 97.2) |
<0.001 |
|
|
Black |
209 ( 0.5) |
1486 ( 0.7) |
|
|
|
Other/Unk |
738 ( 1.8) |
3637 ( 1.8) |
|
|
|
Asian |
234 ( 0.6) |
519 ( 0.3) |
|
|
| HISPANIC (%) |
No |
38860 ( 95.3) |
186065 ( 92.4) |
<0.001 |
|
|
Yes |
886 ( 2.2) |
2729 ( 1.4) |
|
|
|
Unknown |
1019 ( 2.5) |
12468 ( 6.2) |
|
|
| INSURANCE_F (%) |
Private |
21896 ( 53.7) |
109947 ( 54.6) |
<0.001 |
|
|
None |
625 ( 1.5) |
5675 ( 2.8) |
|
|
|
Medicaid |
1602 ( 3.9) |
4305 ( 2.1) |
|
|
|
Medicare |
16341 ( 40.1) |
79051 ( 39.3) |
|
|
|
Other Government |
301 ( 0.7) |
2284 ( 1.1) |
|
|
| INCOME_F (%) |
Less than $38,000 |
2282 ( 5.6) |
24757 ( 12.3) |
<0.001 |
|
|
$38,000 - $47,999 |
5522 ( 13.5) |
44589 ( 22.2) |
|
|
|
$48,000 - $62,999 |
10053 ( 24.7) |
55768 ( 27.7) |
|
|
|
$63,000 + |
22819 ( 56.0) |
75047 ( 37.3) |
|
|
|
NA |
89 ( 0.2) |
1101 ( 0.5) |
|
|
| EDUCATION_F (%) |
21% or more |
3424 ( 8.4) |
22020 ( 10.9) |
<0.001 |
|
|
13 - 20.9% |
6691 ( 16.4) |
46145 ( 22.9) |
|
|
|
7 - 12.9% |
14306 ( 35.1) |
69547 ( 34.6) |
|
|
|
Less than 7% |
16272 ( 39.9) |
62578 ( 31.1) |
|
|
|
NA |
72 ( 0.2) |
972 ( 0.5) |
|
|
| U_R_F (%) |
Metro |
34980 ( 85.8) |
162557 ( 80.8) |
<0.001 |
|
|
Urban |
4233 ( 10.4) |
28590 ( 14.2) |
|
|
|
Rural |
368 ( 0.9) |
3890 ( 1.9) |
|
|
|
NA |
1184 ( 2.9) |
6225 ( 3.1) |
|
|
| CROWFLY (mean (sd)) |
|
29.62 (108.02) |
33.37 (104.82) |
<0.001 |
|
| CDCC_TOTAL_BEST (%) |
0 |
34533 ( 84.7) |
172265 ( 85.6) |
<0.001 |
|
|
1 |
4874 ( 12.0) |
22974 ( 11.4) |
|
|
|
2 |
944 ( 2.3) |
4488 ( 2.2) |
|
|
|
3 |
414 ( 1.0) |
1535 ( 0.8) |
|
|
| SITE_TEXT (%) |
C00.0 External Lip: Upper NOS |
1 ( 0.0) |
5 ( 0.0) |
0.004 |
|
|
C00.1 External Lip: Lower NOS |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
C00.2 External Lip: NOS |
1 ( 0.0) |
0 ( 0.0) |
|
|
|
C00.3 Lip: Upper Mucosa |
0 ( 0.0) |
4 ( 0.0) |
|
|
|
C00.4 Lip: Lower Mucosa |
1 ( 0.0) |
5 ( 0.0) |
|
|
|
C00.5 Lip: Mucosa NOS |
1 ( 0.0) |
1 ( 0.0) |
|
|
|
C00.9 Lip, NOS |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
C44.0 Skin of lip, NOS |
75 ( 0.2) |
357 ( 0.2) |
|
|
|
C44.1 Eyelid |
120 ( 0.3) |
615 ( 0.3) |
|
|
|
C44.2 External ear |
1129 ( 2.8) |
5782 ( 2.9) |
|
|
|
C44.3 Skin of ear and unspecified parts of face |
3518 ( 8.6) |
18335 ( 9.1) |
|
|
|
C44.4 Skin of scalp and neck |
3165 ( 7.8) |
15842 ( 7.9) |
|
|
|
C44.5 Skin of trunk |
12136 ( 29.8) |
59770 ( 29.7) |
|
|
|
C44.6 Skin of upper limb and shoulder |
10107 ( 24.8) |
49284 ( 24.5) |
|
|
|
C44.7 Skin of lower limb and hip |
7696 ( 18.9) |
36379 ( 18.1) |
|
|
|
C44.8 Overlapping lesion of skin |
50 ( 0.1) |
230 ( 0.1) |
|
|
|
C44.9 Skin, NOS |
2474 ( 6.1) |
13105 ( 6.5) |
|
|
|
C51.0 Labium majus |
14 ( 0.0) |
98 ( 0.0) |
|
|
|
C51.1 Labium minus |
14 ( 0.0) |
81 ( 0.0) |
|
|
|
C51.2 Clitoris |
2 ( 0.0) |
45 ( 0.0) |
|
|
|
C51.8 Overlapping lesion of vulva |
8 ( 0.0) |
36 ( 0.0) |
|
|
|
C51.9 Vulva, NOS |
177 ( 0.4) |
888 ( 0.4) |
|
|
|
C52.9 Vagina, NOS |
67 ( 0.2) |
347 ( 0.2) |
|
|
|
C60.0 Prepuce |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
C60.1 Glans penis |
2 ( 0.0) |
11 ( 0.0) |
|
|
|
C60.2 Body of penis |
0 ( 0.0) |
2 ( 0.0) |
|
|
|
C60.8 Overlapping lesion of penis |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
C60.9 Penis |
5 ( 0.0) |
24 ( 0.0) |
|
|
| HISTOLOGY_F_LIM (%) |
8720 |
22006 ( 54.0) |
103751 ( 51.6) |
<0.001 |
|
|
Other |
18759 ( 46.0) |
97511 ( 48.4) |
|
|
| HISTOLOGY_F (%) |
8720 |
22006 ( 54.0) |
103751 ( 51.6) |
<0.001 |
|
|
8743 |
11481 ( 28.2) |
59012 ( 29.3) |
|
|
|
8742 |
1869 ( 4.6) |
10229 ( 5.1) |
|
|
|
8721 |
3845 ( 9.4) |
20211 ( 10.0) |
|
|
|
8745 |
604 ( 1.5) |
2994 ( 1.5) |
|
|
|
8744 |
567 ( 1.4) |
2923 ( 1.5) |
|
|
|
8730 |
185 ( 0.5) |
772 ( 0.4) |
|
|
|
8723 |
100 ( 0.2) |
751 ( 0.4) |
|
|
|
8761 |
59 ( 0.1) |
349 ( 0.2) |
|
|
|
8740 |
29 ( 0.1) |
135 ( 0.1) |
|
|
|
8746 |
11 ( 0.0) |
81 ( 0.0) |
|
|
|
8722 |
6 ( 0.0) |
46 ( 0.0) |
|
|
|
8741 |
3 ( 0.0) |
8 ( 0.0) |
|
|
| BEHAVIOR (%) |
3 |
40765 (100.0) |
201262 (100.0) |
NA |
|
| GRADE_F (%) |
Gr I: Well Diff |
61 ( 0.1) |
457 ( 0.2) |
<0.001 |
|
|
Gr II: Mod Diff |
103 ( 0.3) |
605 ( 0.3) |
|
|
|
Gr III: Poor Diff |
188 ( 0.5) |
1322 ( 0.7) |
|
|
|
Gr IV: Undiff/Anaplastic |
89 ( 0.2) |
423 ( 0.2) |
|
|
|
NA/Unkown |
40324 ( 98.9) |
198455 ( 98.6) |
|
|
| DX_STAGING_PROC_DAYS (mean (sd)) |
|
2.15 (20.06) |
3.85 (60.75) |
0.001 |
|
| TNM_CLIN_T (%) |
N_A |
65 ( 0.2) |
1465 ( 0.7) |
<0.001 |
|
|
c0 |
905 ( 2.2) |
3598 ( 1.8) |
|
|
|
c1 |
2165 ( 5.3) |
9944 ( 4.9) |
|
|
|
c1A |
10863 ( 26.6) |
23020 ( 11.4) |
|
|
|
c1B |
4022 ( 9.9) |
9253 ( 4.6) |
|
|
|
c2 |
644 ( 1.6) |
3084 ( 1.5) |
|
|
|
c2A |
4403 ( 10.8) |
17993 ( 8.9) |
|
|
|
c2B |
1226 ( 3.0) |
4723 ( 2.3) |
|
|
|
c3 |
369 ( 0.9) |
1896 ( 0.9) |
|
|
|
c3A |
1758 ( 4.3) |
7136 ( 3.5) |
|
|
|
c3B |
1506 ( 3.7) |
5931 ( 2.9) |
|
|
|
c4 |
279 ( 0.7) |
1355 ( 0.7) |
|
|
|
c4A |
767 ( 1.9) |
3522 ( 1.7) |
|
|
|
c4B |
1550 ( 3.8) |
6536 ( 3.2) |
|
|
|
cX |
7184 ( 17.6) |
96462 ( 47.9) |
|
|
|
pIS |
397 ( 1.0) |
1285 ( 0.6) |
|
|
|
NA |
2662 ( 6.5) |
4059 ( 2.0) |
|
|
| TNM_CLIN_N (%) |
N_A |
64 ( 0.2) |
1465 ( 0.7) |
<0.001 |
|
|
c0 |
32367 ( 79.4) |
127138 ( 63.2) |
|
|
|
c1 |
954 ( 2.3) |
3525 ( 1.8) |
|
|
|
c1A |
99 ( 0.2) |
855 ( 0.4) |
|
|
|
c1B |
148 ( 0.4) |
1141 ( 0.6) |
|
|
|
c2 |
173 ( 0.4) |
732 ( 0.4) |
|
|
|
c2A |
40 ( 0.1) |
288 ( 0.1) |
|
|
|
c2B |
90 ( 0.2) |
590 ( 0.3) |
|
|
|
c2C |
131 ( 0.3) |
568 ( 0.3) |
|
|
|
c3 |
423 ( 1.0) |
1908 ( 0.9) |
|
|
|
cX |
3959 ( 9.7) |
59602 ( 29.6) |
|
|
|
NA |
2317 ( 5.7) |
3450 ( 1.7) |
|
|
| TNM_CLIN_M (%) |
N_A |
63 ( 0.2) |
1466 ( 0.7) |
<0.001 |
|
|
c0 |
34085 ( 83.6) |
182329 ( 90.6) |
|
|
|
c1 |
499 ( 1.2) |
3838 ( 1.9) |
|
|
|
c1A |
255 ( 0.6) |
1179 ( 0.6) |
|
|
|
c1B |
336 ( 0.8) |
1367 ( 0.7) |
|
|
|
c1C |
1217 ( 3.0) |
4115 ( 2.0) |
|
|
|
NA |
4310 ( 10.6) |
6968 ( 3.5) |
|
|
| TNM_CLIN_STAGE_GROUP (%) |
0 |
521 ( 1.3) |
1766 ( 0.9) |
<0.001 |
|
|
1 |
1278 ( 3.1) |
5862 ( 2.9) |
|
|
|
1A |
11735 ( 28.8) |
46419 ( 23.1) |
|
|
|
1B |
8403 ( 20.6) |
32864 ( 16.3) |
|
|
|
2 |
219 ( 0.5) |
1155 ( 0.6) |
|
|
|
2A |
2925 ( 7.2) |
12011 ( 6.0) |
|
|
|
2B |
2044 ( 5.0) |
8733 ( 4.3) |
|
|
|
2C |
1139 ( 2.8) |
4693 ( 2.3) |
|
|
|
3 |
1501 ( 3.7) |
7265 ( 3.6) |
|
|
|
4 |
2400 ( 5.9) |
10709 ( 5.3) |
|
|
|
4A |
1 ( 0.0) |
2 ( 0.0) |
|
|
|
4C |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
N_A |
70 ( 0.2) |
1468 ( 0.7) |
|
|
|
99 |
8516 ( 20.9) |
68296 ( 33.9) |
|
|
|
NA |
13 ( 0.0) |
18 ( 0.0) |
|
|
| TNM_PATH_T (%) |
N_A |
63 ( 0.2) |
1464 ( 0.7) |
<0.001 |
|
|
p0 |
795 ( 2.0) |
3002 ( 1.5) |
|
|
|
p1 |
1205 ( 3.0) |
6468 ( 3.2) |
|
|
|
p1A |
12275 ( 30.1) |
25155 ( 12.5) |
|
|
|
p1B |
4672 ( 11.5) |
10356 ( 5.1) |
|
|
|
p2 |
314 ( 0.8) |
2220 ( 1.1) |
|
|
|
p2A |
5621 ( 13.8) |
21457 ( 10.7) |
|
|
|
p2B |
1335 ( 3.3) |
5035 ( 2.5) |
|
|
|
p3 |
258 ( 0.6) |
1505 ( 0.7) |
|
|
|
p3A |
2352 ( 5.8) |
9240 ( 4.6) |
|
|
|
p3B |
1875 ( 4.6) |
7317 ( 3.6) |
|
|
|
p4 |
195 ( 0.5) |
1018 ( 0.5) |
|
|
|
p4A |
1298 ( 3.2) |
5075 ( 2.5) |
|
|
|
p4B |
2424 ( 5.9) |
9207 ( 4.6) |
|
|
|
pIS |
170 ( 0.4) |
722 ( 0.4) |
|
|
|
pX |
2525 ( 6.2) |
84386 ( 41.9) |
|
|
|
NA |
3388 ( 8.3) |
7635 ( 3.8) |
|
|
| TNM_PATH_N (%) |
N_A |
62 ( 0.2) |
1463 ( 0.7) |
<0.001 |
|
|
p0 |
20428 ( 50.1) |
85526 ( 42.5) |
|
|
|
p1 |
551 ( 1.4) |
2889 ( 1.4) |
|
|
|
p1A |
1592 ( 3.9) |
5920 ( 2.9) |
|
|
|
p1B |
368 ( 0.9) |
1576 ( 0.8) |
|
|
|
p2 |
151 ( 0.4) |
910 ( 0.5) |
|
|
|
p2A |
571 ( 1.4) |
1933 ( 1.0) |
|
|
|
p2B |
281 ( 0.7) |
1220 ( 0.6) |
|
|
|
p2C |
268 ( 0.7) |
1047 ( 0.5) |
|
|
|
p3 |
775 ( 1.9) |
3296 ( 1.6) |
|
|
|
pX |
9689 ( 23.8) |
82003 ( 40.7) |
|
|
|
NA |
6029 ( 14.8) |
13479 ( 6.7) |
|
|
| TNM_PATH_M (%) |
N_A |
58 ( 0.1) |
1449 ( 0.7) |
<0.001 |
|
|
p1 |
178 ( 0.4) |
2036 ( 1.0) |
|
|
|
p1A |
187 ( 0.5) |
1030 ( 0.5) |
|
|
|
p1B |
163 ( 0.4) |
746 ( 0.4) |
|
|
|
p1C |
548 ( 1.3) |
2104 ( 1.0) |
|
|
|
pX |
0 ( 0.0) |
101181 ( 50.3) |
|
|
|
NA |
39631 ( 97.2) |
92716 ( 46.1) |
|
|
| TNM_PATH_STAGE_GROUP (%) |
0 |
348 ( 0.9) |
1351 ( 0.7) |
<0.001 |
|
|
1 |
812 ( 2.0) |
4286 ( 2.1) |
|
|
|
1A |
9377 ( 23.0) |
43512 ( 21.6) |
|
|
|
1B |
8275 ( 20.3) |
37802 ( 18.8) |
|
|
|
2 |
142 ( 0.3) |
979 ( 0.5) |
|
|
|
2A |
2792 ( 6.8) |
13409 ( 6.7) |
|
|
|
2B |
1994 ( 4.9) |
9433 ( 4.7) |
|
|
|
2C |
1130 ( 2.8) |
4920 ( 2.4) |
|
|
|
3 |
540 ( 1.3) |
4564 ( 2.3) |
|
|
|
3A |
1401 ( 3.4) |
5654 ( 2.8) |
|
|
|
3B |
1255 ( 3.1) |
5649 ( 2.8) |
|
|
|
3C |
998 ( 2.4) |
4181 ( 2.1) |
|
|
|
4 |
1312 ( 3.2) |
6899 ( 3.4) |
|
|
|
4A |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
4C |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
N_A |
66 ( 0.2) |
1465 ( 0.7) |
|
|
|
99 |
8155 ( 20.0) |
51615 ( 25.6) |
|
|
|
NA |
2167 ( 5.3) |
5535 ( 2.8) |
|
|
| DX_RX_STARTED_DAYS (mean (sd)) |
|
12.48 (26.15) |
11.03 (28.24) |
<0.001 |
|
| DX_SURG_STARTED_DAYS (mean (sd)) |
|
11.85 (25.57) |
10.43 (27.30) |
<0.001 |
|
| DX_DEFSURG_STARTED_DAYS (mean (sd)) |
|
34.03 (32.15) |
30.73 (34.78) |
<0.001 |
|
| MARGINS (%) |
No Residual |
36028 ( 88.4) |
177483 ( 88.2) |
<0.001 |
|
|
Residual, NOS |
563 ( 1.4) |
3121 ( 1.6) |
|
|
|
Microscopic Resid |
728 ( 1.8) |
2965 ( 1.5) |
|
|
|
Macroscopic Resid |
45 ( 0.1) |
252 ( 0.1) |
|
|
|
Not evaluable |
125 ( 0.3) |
617 ( 0.3) |
|
|
|
No surg |
2846 ( 7.0) |
14061 ( 7.0) |
|
|
|
Unknown |
430 ( 1.1) |
2763 ( 1.4) |
|
|
| MARGINS_YN (%) |
No |
36028 ( 88.4) |
177483 ( 88.2) |
0.050 |
|
|
Yes |
1336 ( 3.3) |
6338 ( 3.1) |
|
|
|
No surg/Unk/NA |
3401 ( 8.3) |
17441 ( 8.7) |
|
|
| SURG_DISCHARGE_DAYS (mean (sd)) |
|
0.78 (5.52) |
2.02 (9.82) |
<0.001 |
|
| READM_HOSP_30_DAYS_F (%) |
No_Surg_or_No_Readmit |
39943 ( 98.0) |
191472 ( 95.1) |
<0.001 |
|
|
Unplan_Readmit_Same |
203 ( 0.5) |
2220 ( 1.1) |
|
|
|
Plan_Readmit_Same |
390 ( 1.0) |
3307 ( 1.6) |
|
|
|
PlanUnplan_Same |
42 ( 0.1) |
322 ( 0.2) |
|
|
|
9 |
187 ( 0.5) |
3941 ( 2.0) |
|
|
| RX_SUMM_RADIATION_F (%) |
None |
38980 ( 95.6) |
190623 ( 94.7) |
<0.001 |
|
|
Beam Radiation |
1672 ( 4.1) |
8904 ( 4.4) |
|
|
|
Radioactive Implants |
11 ( 0.0) |
62 ( 0.0) |
|
|
|
Radioisotopes |
1 ( 0.0) |
5 ( 0.0) |
|
|
|
Beam + Imp or Isotopes |
9 ( 0.0) |
38 ( 0.0) |
|
|
|
Radiation, NOS |
14 ( 0.0) |
90 ( 0.0) |
|
|
|
Unknown |
78 ( 0.2) |
1540 ( 0.8) |
|
|
| PUF_30_DAY_MORT_CD_F (%) |
Alive_30 |
36561 ( 89.7) |
182141 ( 90.5) |
<0.001 |
|
|
Dead_30 |
80 ( 0.2) |
479 ( 0.2) |
|
|
|
Unknown |
1241 ( 3.0) |
4407 ( 2.2) |
|
|
|
NA |
2883 ( 7.1) |
14235 ( 7.1) |
|
|
| PUF_90_DAY_MORT_CD_F (%) |
Alive_90 |
35463 ( 87.0) |
178281 ( 88.6) |
<0.001 |
|
|
Dead_90 |
236 ( 0.6) |
1574 ( 0.8) |
|
|
|
Unknown |
2183 ( 5.4) |
7172 ( 3.6) |
|
|
|
NA |
2883 ( 7.1) |
14235 ( 7.1) |
|
|
| DX_LASTCONTACT_DEATH_MONTHS (mean (sd)) |
|
31.19 (21.58) |
58.30 (42.48) |
<0.001 |
|
| LYMPH_VASCULAR_INVASION_F (%) |
Neg_LymphVasc_Inv |
28218 ( 69.2) |
67005 ( 33.3) |
<0.001 |
|
|
Pos_LumphVasc_Inv |
1566 ( 3.8) |
4091 ( 2.0) |
|
|
|
N_A |
9 ( 0.0) |
24 ( 0.0) |
|
|
|
Unknown |
10972 ( 26.9) |
24575 ( 12.2) |
|
|
|
NA |
0 ( 0.0) |
105567 ( 52.5) |
|
|
| RX_HOSP_SURG_APPR_2010_F (%) |
No_Surg |
4647 ( 11.4) |
11360 ( 5.6) |
<0.001 |
|
|
Robot_Assist |
39 ( 0.1) |
73 ( 0.0) |
|
|
|
Robot_to_Open |
6 ( 0.0) |
18 ( 0.0) |
|
|
|
Endo_Lap |
87 ( 0.2) |
244 ( 0.1) |
|
|
|
Endo_Lap_to_Open |
19 ( 0.0) |
110 ( 0.1) |
|
|
|
Open_Unknown |
35958 ( 88.2) |
83874 ( 41.7) |
|
|
|
Unknown |
9 ( 0.0) |
16 ( 0.0) |
|
|
|
NA |
0 ( 0.0) |
105567 ( 52.5) |
|
|
| SURG_RAD_SEQ (%) |
Surg Alone |
37112 ( 91.0) |
181500 ( 90.2) |
<0.001 |
|
|
Surg then Rad |
991 ( 2.4) |
5632 ( 2.8) |
|
|
|
Rad Alone |
676 ( 1.7) |
3221 ( 1.6) |
|
|
|
No Treatment |
1804 ( 4.4) |
8602 ( 4.3) |
|
|
|
Other |
146 ( 0.4) |
2090 ( 1.0) |
|
|
|
Rad before and after Surg |
7 ( 0.0) |
24 ( 0.0) |
|
|
|
Rad then Surg |
29 ( 0.1) |
193 ( 0.1) |
|
|
| SURG_RAD_SEQ_C (%) |
Surg, No rad, No Chemo |
35898 ( 88.1) |
173939 ( 86.4) |
<0.001 |
|
|
Surg then Rad, No Chemo |
782 ( 1.9) |
4272 ( 2.1) |
|
|
|
Surg then Rad, Yes Chemo |
182 ( 0.4) |
1204 ( 0.6) |
|
|
|
Surg, No rad, Yes Chemo |
349 ( 0.9) |
2528 ( 1.3) |
|
|
|
No Surg, No Rad, Yes Chemo |
314 ( 0.8) |
1734 ( 0.9) |
|
|
|
No Surg, No Rad, No Chemo |
1432 ( 3.5) |
6538 ( 3.2) |
|
|
|
Other |
1113 ( 2.7) |
7693 ( 3.8) |
|
|
|
Rad, No Surg, Yes Chemo |
208 ( 0.5) |
1186 ( 0.6) |
|
|
|
Rad, No Surg, No Chemo |
451 ( 1.1) |
1955 ( 1.0) |
|
|
|
Rad then Surg, Yes Chemo |
11 ( 0.0) |
80 ( 0.0) |
|
|
|
Rad then Surg, No Chemo |
18 ( 0.0) |
109 ( 0.1) |
|
|
|
Rad before and after Surg, Yes Chemo |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
Rad before and after Surg, No Chemo |
6 ( 0.0) |
17 ( 0.0) |
|
|
| T_SIZE (%) |
Microscopic focus |
0 ( 0.0) |
5 ( 0.0) |
0.542 |
|
|
< 1 cm |
22 ( 0.1) |
146 ( 0.1) |
|
|
|
1-2 cm |
53 ( 0.1) |
260 ( 0.1) |
|
|
|
2-3 cm |
54 ( 0.1) |
219 ( 0.1) |
|
|
|
3-4 cm |
21 ( 0.1) |
130 ( 0.1) |
|
|
|
4-5 cm |
18 ( 0.0) |
101 ( 0.1) |
|
|
|
5-6 cm |
13 ( 0.0) |
54 ( 0.0) |
|
|
|
>6 cm |
24 ( 0.1) |
146 ( 0.1) |
|
|
|
NA_unk |
90 ( 0.2) |
502 ( 0.2) |
|
|
|
NA |
40470 ( 99.3) |
199699 ( 99.2) |
|
|
| SURGERY_YN (%) |
No |
2821 ( 6.9) |
13640 ( 6.8) |
<0.001 |
|
|
Ukn |
55 ( 0.1) |
534 ( 0.3) |
|
|
|
Yes |
37889 ( 92.9) |
187088 ( 93.0) |
|
|
| RADIATION_YN (%) |
No |
38953 ( 95.6) |
190471 ( 94.6) |
<0.001 |
|
|
Yes |
1707 ( 4.2) |
9099 ( 4.5) |
|
|
|
NA |
105 ( 0.3) |
1692 ( 0.8) |
|
|
| CHEMO_YN (%) |
No |
38664 ( 94.8) |
187629 ( 93.2) |
<0.001 |
|
|
Yes |
1074 ( 2.6) |
6835 ( 3.4) |
|
|
|
Ukn |
1027 ( 2.5) |
6798 ( 3.4) |
|
|
| mets_at_dx (%) |
Bone |
175 ( 0.4) |
453 ( 0.2) |
<0.001 |
|
|
Brain |
320 ( 0.8) |
849 ( 0.4) |
|
|
|
Liver |
111 ( 0.3) |
318 ( 0.2) |
|
|
|
Lung |
912 ( 2.2) |
2187 ( 1.1) |
|
|
|
None/Other/Unk/NA |
39247 ( 96.3) |
197455 ( 98.1) |
|
|
| MEDICAID_EXPN_CODE (%) |
Non-Expansion State |
0 ( 0.0) |
88443 ( 43.9) |
<0.001 |
|
|
Jan 2014 Expansion States |
15288 ( 37.5) |
59573 ( 29.6) |
|
|
|
Early Expansion States (2010-13) |
25477 ( 62.5) |
19494 ( 9.7) |
|
|
|
Late Expansion States (> Jan 2014) |
0 ( 0.0) |
33752 ( 16.8) |
|
|
| SITE_TEXT (%) |
C00.0 External Lip: Upper NOS |
1 ( 0.0) |
5 ( 0.0) |
0.004 |
|
|
C00.1 External Lip: Lower NOS |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
C00.2 External Lip: NOS |
1 ( 0.0) |
0 ( 0.0) |
|
|
|
C00.3 Lip: Upper Mucosa |
0 ( 0.0) |
4 ( 0.0) |
|
|
|
C00.4 Lip: Lower Mucosa |
1 ( 0.0) |
5 ( 0.0) |
|
|
|
C00.5 Lip: Mucosa NOS |
1 ( 0.0) |
1 ( 0.0) |
|
|
|
C00.9 Lip, NOS |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
C44.0 Skin of lip, NOS |
75 ( 0.2) |
357 ( 0.2) |
|
|
|
C44.1 Eyelid |
120 ( 0.3) |
615 ( 0.3) |
|
|
|
C44.2 External ear |
1129 ( 2.8) |
5782 ( 2.9) |
|
|
|
C44.3 Skin of ear and unspecified parts of face |
3518 ( 8.6) |
18335 ( 9.1) |
|
|
|
C44.4 Skin of scalp and neck |
3165 ( 7.8) |
15842 ( 7.9) |
|
|
|
C44.5 Skin of trunk |
12136 ( 29.8) |
59770 ( 29.7) |
|
|
|
C44.6 Skin of upper limb and shoulder |
10107 ( 24.8) |
49284 ( 24.5) |
|
|
|
C44.7 Skin of lower limb and hip |
7696 ( 18.9) |
36379 ( 18.1) |
|
|
|
C44.8 Overlapping lesion of skin |
50 ( 0.1) |
230 ( 0.1) |
|
|
|
C44.9 Skin, NOS |
2474 ( 6.1) |
13105 ( 6.5) |
|
|
|
C51.0 Labium majus |
14 ( 0.0) |
98 ( 0.0) |
|
|
|
C51.1 Labium minus |
14 ( 0.0) |
81 ( 0.0) |
|
|
|
C51.2 Clitoris |
2 ( 0.0) |
45 ( 0.0) |
|
|
|
C51.8 Overlapping lesion of vulva |
8 ( 0.0) |
36 ( 0.0) |
|
|
|
C51.9 Vulva, NOS |
177 ( 0.4) |
888 ( 0.4) |
|
|
|
C52.9 Vagina, NOS |
67 ( 0.2) |
347 ( 0.2) |
|
|
|
C60.0 Prepuce |
1 ( 0.0) |
7 ( 0.0) |
|
|
|
C60.1 Glans penis |
2 ( 0.0) |
11 ( 0.0) |
|
|
|
C60.2 Body of penis |
0 ( 0.0) |
2 ( 0.0) |
|
|
|
C60.8 Overlapping lesion of penis |
0 ( 0.0) |
1 ( 0.0) |
|
|
|
C60.9 Penis |
5 ( 0.0) |
24 ( 0.0) |
|
|
p_table(data,
vars = c("YEAR_OF_DIAGNOSIS"),
strata = c("MEDICAID_EXPN_CODE"))
| n |
|
83879 |
71602 |
43372 |
32294 |
37942 |
|
|
| YEAR_OF_DIAGNOSIS (%) |
2004 |
5368 ( 6.4) |
4616 ( 6.4) |
2754 ( 6.3) |
1982 ( 6.1) |
3036 (8.0) |
NaN |
|
|
2005 |
5840 ( 7.0) |
4915 ( 6.9) |
3025 ( 7.0) |
2164 ( 6.7) |
3325 (8.8) |
|
|
|
2006 |
5832 ( 7.0) |
5282 ( 7.4) |
3005 ( 6.9) |
2186 ( 6.8) |
3179 (8.4) |
|
|
|
2007 |
6277 ( 7.5) |
5295 ( 7.4) |
3169 ( 7.3) |
2255 ( 7.0) |
3224 (8.5) |
|
|
|
2008 |
6620 ( 7.9) |
5595 ( 7.8) |
3333 ( 7.7) |
2315 ( 7.2) |
3190 (8.4) |
|
|
|
2009 |
6858 ( 8.2) |
5757 ( 8.0) |
3466 ( 8.0) |
2616 ( 8.1) |
3241 (8.5) |
|
|
|
2010 |
6960 ( 8.3) |
5865 ( 8.2) |
3462 ( 8.0) |
2631 ( 8.1) |
3049 (8.0) |
|
|
|
2011 |
7247 ( 8.6) |
6339 ( 8.9) |
3779 ( 8.7) |
2795 ( 8.7) |
3005 (7.9) |
|
|
|
2012 |
7578 ( 9.0) |
6453 ( 9.0) |
3851 ( 8.9) |
2957 ( 9.2) |
3110 (8.2) |
|
|
|
2013 |
8094 ( 9.6) |
6782 ( 9.5) |
4276 ( 9.9) |
3170 ( 9.8) |
3083 (8.1) |
|
|
|
2014 |
8214 ( 9.8) |
7087 ( 9.9) |
4460 (10.3) |
3501 (10.8) |
3207 (8.5) |
|
|
|
2015 |
8991 (10.7) |
7616 (10.6) |
4792 (11.0) |
3722 (11.5) |
3293 (8.7) |
|
|
|
2016 |
0 ( 0.0) |
0 ( 0.0) |
0 ( 0.0) |
0 ( 0.0) |
0 (0.0) |
|
|
preExpMedicare <- nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion" & INSURANCE_F == "Medicare"))
postExpMedicare <- nrow(data %>% filter(EXPN_GROUP == "Post-Expansion" & INSURANCE_F == "Medicare"))
# p = 0.25 when comparing change in proportion of patients with Medicare before and after ACA expansion
prop.test(c(preExpMedicare, postExpMedicare),
c(nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion")), nrow(data %>% filter(EXPN_GROUP == "Post-Expansion"))))
2-sample test for equality of proportions with continuity correction
data: c(preExpMedicare, postExpMedicare) out of c(nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion")), nrow(data %>% c(preExpMedicare, postExpMedicare) out of filter(EXPN_GROUP == "Post-Expansion")))
X-squared = 7.8211, df = 1, p-value = 0.005164
alternative hypothesis: two.sided
95 percent confidence interval:
-0.012912480 -0.002252538
sample estimates:
prop 1 prop 2
0.3934805 0.4010630
preExpNoInsurance <- nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion") %>%
filter(INSURANCE_F == "None"))
postExpNoInsurance <- nrow(data %>% filter(EXPN_GROUP == "Post-Expansion") %>%
filter(INSURANCE_F == "None"))
# Significant decrease in the overall proportion of patients without insurance after ACA expansion
prop.test(c(preExpNoInsurance, postExpNoInsurance),
c(nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion")), nrow(data %>% filter(EXPN_GROUP == "Post-Expansion"))))
2-sample test for equality of proportions with continuity correction
data: c(preExpNoInsurance, postExpNoInsurance) out of c(nrow(data %>% filter(EXPN_GROUP == "Pre-Expansion")), nrow(data %>% c(preExpNoInsurance, postExpNoInsurance) out of filter(EXPN_GROUP == "Post-Expansion")))
X-squared = 205.43, df = 1, p-value < 2.2e-16
alternative hypothesis: two.sided
95 percent confidence interval:
0.01108259 0.01393125
sample estimates:
prop 1 prop 2
0.02756172 0.01505480
p_table(no_Excludes, strata = "EXPN_GROUP", vars = "DX_RX_STARTED_DAYS")
| n |
|
40765 |
201262 |
|
|
| DX_RX_STARTED_DAYS (mean (sd)) |
|
12.48 (26.15) |
11.03 (28.24) |
<0.001 |
|
data <- data %>% mutate(Insured = INSURANCE_F != "Unknown")
Kaplan Meier Analysis
All
uni_var(test_var = "All", data_imp = data)
_________________________________________________
## All
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ All, data = data)
n events median 0.95LCL 0.95UCL
269089 58360 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ All, data = data)
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 225082 15378 0.940 0.000473 0.939 0.941
24 193676 11650 0.889 0.000640 0.888 0.890
36 160798 8870 0.845 0.000757 0.844 0.847
48 133228 6244 0.810 0.000847 0.808 0.812
60 108250 4574 0.780 0.000926 0.778 0.782
120 26477 10347 0.662 0.001397 0.659 0.665
## Univariable Cox Proportional Hazard Model for: All
[1] "Only one level, no Cox model performed"
## Unadjusted Kaplan Meier Overall Survival Curve for: All



Facility Type
uni_var(test_var = "FACILITY_TYPE_F", data_imp = data)
_________________________________________________
## FACILITY_TYPE_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_TYPE_F, data = data)
37942 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
FACILITY_TYPE_F=Community Cancer Program 15035 4420 150 144 NA
FACILITY_TYPE_F=Comprehensive Comm Ca Program 82869 21864 162 160 NA
FACILITY_TYPE_F=Academic/Research Program 105617 22457 NA 165 NA
FACILITY_TYPE_F=Integrated Network Ca Program 27626 6826 163 163 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_TYPE_F, data = data)
37942 observations deleted due to missingness
FACILITY_TYPE_F=Community Cancer Program
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12124 1418 0.900 0.00251 0.896 0.905
24 10268 863 0.834 0.00319 0.828 0.840
36 8410 627 0.780 0.00365 0.772 0.787
48 6939 426 0.737 0.00398 0.730 0.745
60 5612 315 0.701 0.00428 0.693 0.710
120 1343 682 0.567 0.00610 0.555 0.579
FACILITY_TYPE_F=Comprehensive Comm Ca Program
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 68785 6145 0.922 0.000954 0.920 0.924
24 59006 4221 0.863 0.001253 0.861 0.866
36 49104 3150 0.814 0.001455 0.811 0.817
48 40913 2276 0.774 0.001609 0.771 0.777
60 33635 1678 0.740 0.001741 0.737 0.743
120 8201 3854 0.608 0.002522 0.603 0.613
FACILITY_TYPE_F=Academic/Research Program
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 88530 5217 0.948 0.000708 0.946 0.949
24 75611 4692 0.895 0.001002 0.893 0.897
36 61822 3596 0.849 0.001208 0.847 0.852
48 50290 2543 0.811 0.001368 0.809 0.814
60 40065 1840 0.779 0.001509 0.776 0.782
120 9247 4083 0.650 0.002369 0.645 0.654
FACILITY_TYPE_F=Integrated Network Ca Program
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 22951 1908 0.927 0.00160 0.924 0.930
24 19701 1297 0.873 0.00211 0.869 0.877
36 16285 1045 0.823 0.00248 0.818 0.828
48 13399 684 0.786 0.00275 0.781 0.792
60 10806 503 0.754 0.00299 0.748 0.760
120 2525 1244 0.617 0.00453 0.608 0.626
## Univariable Cox Proportional Hazard Model for: FACILITY_TYPE_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_TYPE_F, data = data)
n= 231147, number of events= 55567
(37942 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
FACILITY_TYPE_FComprehensive Comm Ca Program -0.15995 0.85218 0.01649 -9.699 <2e-16 ***
FACILITY_TYPE_FAcademic/Research Program -0.34989 0.70477 0.01646 -21.263 <2e-16 ***
FACILITY_TYPE_FIntegrated Network Ca Program -0.20951 0.81098 0.01931 -10.852 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
FACILITY_TYPE_FComprehensive Comm Ca Program 0.8522 1.173 0.8251 0.8802
FACILITY_TYPE_FAcademic/Research Program 0.7048 1.419 0.6824 0.7279
FACILITY_TYPE_FIntegrated Network Ca Program 0.8110 1.233 0.7809 0.8423
Concordance= 0.535 (se = 0.001 )
Rsquare= 0.003 (max possible= 0.996 )
Likelihood ratio test= 658.4 on 3 df, p=0
Wald test = 666.5 on 3 df, p=0
Score (logrank) test = 670 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: FACILITY_TYPE_F



Facility Location
uni_var(test_var = "FACILITY_LOCATION_F", data_imp = data)
_________________________________________________
## FACILITY_LOCATION_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_LOCATION_F, data = data)
37942 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
FACILITY_LOCATION_F=New England 14633 3342 NA NA NA
FACILITY_LOCATION_F=Middle Atlantic 37321 8205 165 163 NA
FACILITY_LOCATION_F=South Atlantic 52385 13223 162 158 NA
FACILITY_LOCATION_F=East North Central 39474 9551 165 165 NA
FACILITY_LOCATION_F=East South Central 15651 4333 149 143 NA
FACILITY_LOCATION_F=West North Central 19556 4343 NA NA NA
FACILITY_LOCATION_F=West South Central 12471 3399 161 156 NA
FACILITY_LOCATION_F=Mountain 11965 2772 161 161 NA
FACILITY_LOCATION_F=Pacific 27691 6399 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_LOCATION_F, data = data)
37942 observations deleted due to missingness
FACILITY_LOCATION_F=New England
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12362 820 0.941 0.00200 0.937 0.945
24 10676 645 0.890 0.00272 0.885 0.895
36 8880 523 0.843 0.00325 0.837 0.850
48 7366 349 0.808 0.00363 0.801 0.815
60 5884 280 0.775 0.00399 0.767 0.782
120 1375 639 0.639 0.00622 0.627 0.652
FACILITY_LOCATION_F=Middle Atlantic
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 31658 2130 0.940 0.00126 0.937 0.942
24 26863 1724 0.886 0.00173 0.883 0.890
36 21828 1249 0.842 0.00205 0.838 0.846
48 17484 910 0.803 0.00232 0.799 0.808
60 13636 634 0.771 0.00256 0.766 0.776
120 2666 1398 0.637 0.00420 0.628 0.645
FACILITY_LOCATION_F=South Atlantic
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 43103 3351 0.932 0.00113 0.930 0.935
24 36821 2577 0.874 0.00154 0.871 0.877
36 30686 1969 0.824 0.00181 0.821 0.828
48 25384 1460 0.783 0.00203 0.779 0.786
60 20756 1040 0.748 0.00220 0.744 0.752
120 5032 2498 0.607 0.00327 0.601 0.614
FACILITY_LOCATION_F=East North Central
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 32964 2509 0.933 0.00129 0.930 0.936
24 28267 1867 0.878 0.00174 0.875 0.881
36 23187 1450 0.830 0.00205 0.826 0.834
48 19034 1010 0.791 0.00229 0.786 0.795
60 15352 752 0.757 0.00251 0.752 0.762
120 3747 1742 0.623 0.00375 0.616 0.631
FACILITY_LOCATION_F=East South Central
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 13144 1117 0.925 0.00216 0.921 0.929
24 11125 887 0.860 0.00291 0.855 0.866
36 9212 636 0.808 0.00339 0.801 0.815
48 7578 489 0.762 0.00378 0.755 0.770
60 6070 346 0.725 0.00410 0.717 0.733
120 1387 747 0.583 0.00605 0.571 0.595
FACILITY_LOCATION_F=West North Central
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 16079 1128 0.939 0.00178 0.935 0.942
24 13835 858 0.886 0.00241 0.882 0.891
36 11283 712 0.837 0.00290 0.832 0.843
48 9254 449 0.801 0.00324 0.795 0.808
60 7450 327 0.770 0.00353 0.763 0.777
120 1726 765 0.643 0.00544 0.633 0.654
FACILITY_LOCATION_F=West South Central
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 10367 1065 0.911 0.00261 0.906 0.916
24 8722 676 0.848 0.00336 0.842 0.855
36 7235 491 0.798 0.00386 0.790 0.805
48 6000 339 0.758 0.00424 0.749 0.766
60 4868 264 0.722 0.00458 0.713 0.731
120 1002 511 0.600 0.00661 0.587 0.613
FACILITY_LOCATION_F=Mountain
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 9911 775 0.932 0.00238 0.927 0.936
24 8506 548 0.878 0.00316 0.872 0.884
36 6977 430 0.830 0.00373 0.823 0.838
48 5737 301 0.792 0.00417 0.784 0.800
60 4766 184 0.764 0.00449 0.756 0.773
120 1181 452 0.646 0.00675 0.633 0.659
FACILITY_LOCATION_F=Pacific
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 22802 1793 0.932 0.00156 0.929 0.935
24 19771 1291 0.877 0.00208 0.873 0.881
36 16333 958 0.831 0.00244 0.827 0.836
48 13704 622 0.798 0.00269 0.792 0.803
60 11336 509 0.766 0.00293 0.760 0.771
120 3200 1111 0.652 0.00418 0.644 0.660
## Univariable Cox Proportional Hazard Model for: FACILITY_LOCATION_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_LOCATION_F, data = data)
n= 231147, number of events= 55567
(37942 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
FACILITY_LOCATION_FMiddle Atlantic 9.679e-03 1.010e+00 2.052e-02 0.472 0.637193
FACILITY_LOCATION_FSouth Atlantic 1.178e-01 1.125e+00 1.936e-02 6.086 1.16e-09 ***
FACILITY_LOCATION_FEast North Central 7.440e-02 1.077e+00 2.010e-02 3.702 0.000214 ***
FACILITY_LOCATION_FEast South Central 2.126e-01 1.237e+00 2.302e-02 9.235 < 2e-16 ***
FACILITY_LOCATION_FWest North Central 8.590e-03 1.009e+00 2.301e-02 0.373 0.708930
FACILITY_LOCATION_FWest South Central 2.152e-01 1.240e+00 2.436e-02 8.834 < 2e-16 ***
FACILITY_LOCATION_FMountain 2.608e-02 1.026e+00 2.569e-02 1.015 0.310105
FACILITY_LOCATION_FPacific 1.576e-05 1.000e+00 2.134e-02 0.001 0.999411
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
FACILITY_LOCATION_FMiddle Atlantic 1.010 0.9904 0.9699 1.051
FACILITY_LOCATION_FSouth Atlantic 1.125 0.8889 1.0832 1.169
FACILITY_LOCATION_FEast North Central 1.077 0.9283 1.0356 1.121
FACILITY_LOCATION_FEast South Central 1.237 0.8085 1.1823 1.294
FACILITY_LOCATION_FWest North Central 1.009 0.9914 0.9641 1.055
FACILITY_LOCATION_FWest South Central 1.240 0.8064 1.1823 1.301
FACILITY_LOCATION_FMountain 1.026 0.9743 0.9760 1.079
FACILITY_LOCATION_FPacific 1.000 1.0000 0.9590 1.043
Concordance= 0.519 (se = 0.001 )
Rsquare= 0.001 (max possible= 0.996 )
Likelihood ratio test= 283.7 on 8 df, p=0
Wald test = 288.6 on 8 df, p=0
Score (logrank) test = 289.3 on 8 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: FACILITY_LOCATION_F



Facility Geography
uni_var(test_var = "FACILITY_GEOGRAPHY", data_imp = data)
_________________________________________________
## FACILITY_GEOGRAPHY
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_GEOGRAPHY, data = data)
37942 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
FACILITY_GEOGRAPHY=Northeast 51954 11547 NA 165 NA
FACILITY_GEOGRAPHY=South 64856 16622 162 159 NA
FACILITY_GEOGRAPHY=Midwest 74681 18227 165 164 NA
FACILITY_GEOGRAPHY=West 39656 9171 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_GEOGRAPHY, data = data)
37942 observations deleted due to missingness
FACILITY_GEOGRAPHY=Northeast
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 44020 2950 0.940 0.00107 0.938 0.942
24 37539 2369 0.887 0.00146 0.884 0.890
36 30708 1772 0.842 0.00174 0.839 0.846
48 24850 1259 0.805 0.00195 0.801 0.809
60 19520 914 0.772 0.00215 0.768 0.776
120 4041 2037 0.637 0.00348 0.631 0.644
FACILITY_GEOGRAPHY=South
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 53470 4416 0.928 0.00104 0.926 0.930
24 45543 3253 0.869 0.00140 0.866 0.872
36 37921 2460 0.819 0.00164 0.816 0.822
48 31384 1799 0.778 0.00183 0.774 0.781
60 25624 1304 0.743 0.00199 0.739 0.747
120 6034 3009 0.606 0.00294 0.600 0.611
FACILITY_GEOGRAPHY=Midwest
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 62187 4754 0.933 0.000943 0.931 0.935
24 53227 3612 0.876 0.001271 0.874 0.879
36 43682 2798 0.827 0.001503 0.824 0.830
48 35866 1948 0.787 0.001679 0.784 0.791
60 28872 1425 0.753 0.001833 0.750 0.757
120 6860 3254 0.620 0.002752 0.614 0.625
FACILITY_GEOGRAPHY=West
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 32713 2568 0.932 0.00130 0.929 0.934
24 28277 1839 0.877 0.00174 0.874 0.881
36 23310 1388 0.831 0.00204 0.827 0.835
48 19441 923 0.796 0.00226 0.791 0.800
60 16102 693 0.765 0.00246 0.760 0.770
120 4381 1563 0.650 0.00355 0.643 0.657
## Univariable Cox Proportional Hazard Model for: FACILITY_GEOGRAPHY
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ FACILITY_GEOGRAPHY, data = data)
n= 231147, number of events= 55567
(37942 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
FACILITY_GEOGRAPHYSouth 0.1301286 1.1389748 0.0121170 10.739 < 2e-16 ***
FACILITY_GEOGRAPHYMidwest 0.0821252 1.0855917 0.0118955 6.904 5.06e-12 ***
FACILITY_GEOGRAPHYWest 0.0009841 1.0009845 0.0139936 0.070 0.944
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
FACILITY_GEOGRAPHYSouth 1.139 0.8780 1.1122 1.166
FACILITY_GEOGRAPHYMidwest 1.086 0.9212 1.0606 1.111
FACILITY_GEOGRAPHYWest 1.001 0.9990 0.9739 1.029
Concordance= 0.515 (se = 0.001 )
Rsquare= 0.001 (max possible= 0.996 )
Likelihood ratio test= 162.6 on 3 df, p=0
Wald test = 162.2 on 3 df, p=0
Score (logrank) test = 162.3 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: FACILITY_GEOGRAPHY



Age Group
uni_var(test_var = "AGE_F", data_imp = data)
_________________________________________________
## AGE_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_F, data = data)
34 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
AGE_F=(0,54] 107677 11031 NA NA NA
AGE_F=(54,64] 60646 9824 NA NA NA
AGE_F=(64,74] 51176 12284 149.8 146.5 153.3
AGE_F=(74,100] 49556 25217 60.6 59.7 61.5
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_F, data = data)
34 observations deleted due to missingness
AGE_F=(0,54]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 92193 3053 0.970 0.000537 0.969 0.971
24 81724 2343 0.944 0.000741 0.943 0.946
36 70527 1688 0.923 0.000880 0.922 0.925
48 60487 1190 0.907 0.000988 0.905 0.909
60 50712 828 0.893 0.001077 0.891 0.896
120 14310 1733 0.847 0.001545 0.844 0.850
AGE_F=(54,64]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 50732 2864 0.950 0.000911 0.948 0.952
24 44074 1957 0.912 0.001220 0.909 0.914
36 36713 1573 0.877 0.001457 0.874 0.880
48 30492 1007 0.851 0.001627 0.848 0.854
60 24862 688 0.830 0.001772 0.826 0.833
120 6092 1533 0.747 0.002700 0.741 0.752
AGE_F=(64,74]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 42621 3135 0.935 0.00112 0.933 0.938
24 36321 2309 0.882 0.00150 0.879 0.885
36 29455 1809 0.835 0.00179 0.832 0.839
48 23906 1297 0.795 0.00202 0.791 0.799
60 19007 926 0.762 0.00222 0.757 0.766
120 4040 2430 0.598 0.00367 0.591 0.605
AGE_F=(74,100]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 39511 6325 0.867 0.00156 0.864 0.870
24 31538 5040 0.752 0.00203 0.748 0.756
36 24086 3799 0.656 0.00230 0.651 0.660
48 18329 2750 0.575 0.00248 0.570 0.580
60 13658 2131 0.503 0.00262 0.498 0.508
120 2030 4651 0.240 0.00326 0.233 0.246
## Univariable Cox Proportional Hazard Model for: AGE_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_F, data = data)
n= 269055, number of events= 58356
(34 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
AGE_F(54,64] 0.54866 1.73093 0.01388 39.54 <2e-16 ***
AGE_F(64,74] 1.00006 2.71844 0.01313 76.14 <2e-16 ***
AGE_F(74,100] 1.91851 6.81077 0.01149 166.95 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
AGE_F(54,64] 1.731 0.5777 1.684 1.779
AGE_F(64,74] 2.718 0.3679 2.649 2.789
AGE_F(74,100] 6.811 0.1468 6.659 6.966
Concordance= 0.68 (se = 0.001 )
Rsquare= 0.113 (max possible= 0.994 )
Likelihood ratio test= 32402 on 3 df, p=0
Wald test = 32768 on 3 df, p=0
Score (logrank) test = 40304 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: AGE_F



Age Group
uni_var(test_var = "AGE_40", data_imp = data)
_________________________________________________
## AGE_40
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_40, data = data)
34 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
AGE_40=(0,40] 41135 3069 NA NA NA
AGE_40=(40,100] 227920 55287 165 163 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_40, data = data)
34 observations deleted due to missingness
AGE_40=(0,40]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 35467 769 0.980 0.000713 0.979 0.981
24 31565 642 0.961 0.001008 0.959 0.963
36 27335 482 0.946 0.001217 0.943 0.948
48 23535 355 0.933 0.001386 0.930 0.935
60 19696 254 0.922 0.001528 0.919 0.925
120 5623 526 0.884 0.002261 0.880 0.888
AGE_40=(40,100]
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 189590 14608 0.932 0.000541 0.931 0.933
24 162092 11007 0.876 0.000729 0.874 0.877
36 133446 8387 0.827 0.000860 0.826 0.829
48 109679 5889 0.788 0.000959 0.786 0.790
60 88543 4319 0.754 0.001047 0.752 0.757
120 20849 9821 0.621 0.001579 0.618 0.624
## Univariable Cox Proportional Hazard Model for: AGE_40
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ AGE_40, data = data)
n= 269055, number of events= 58356
(34 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
AGE_40(40,100] 1.30584 3.69078 0.01855 70.39 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
AGE_40(40,100] 3.691 0.2709 3.559 3.827
Concordance= 0.555 (se = 0.001 )
Rsquare= 0.027 (max possible= 0.994 )
Likelihood ratio test= 7421 on 1 df, p=0
Wald test = 4955 on 1 df, p=0
Score (logrank) test = 5699 on 1 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: AGE_40



Gender
uni_var(test_var = "SEX_F", data_imp = data)
_________________________________________________
## SEX_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SEX_F, data = data)
n events median 0.95LCL 0.95UCL
SEX_F=Male 147088 37682 164 162 NA
SEX_F=Female 122001 20678 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SEX_F, data = data)
SEX_F=Male
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 121716 10085 0.928 0.000695 0.926 0.929
24 103537 7549 0.868 0.000933 0.866 0.869
36 84929 5734 0.816 0.001098 0.814 0.818
48 69534 4065 0.774 0.001223 0.772 0.777
60 55969 2953 0.739 0.001332 0.736 0.741
120 13208 6538 0.602 0.001975 0.598 0.606
SEX_F=Female
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 103366 5293 0.954 0.000617 0.953 0.955
24 90139 4101 0.915 0.000846 0.913 0.916
36 75869 3136 0.881 0.001009 0.879 0.883
48 63694 2179 0.853 0.001133 0.851 0.856
60 52281 1621 0.830 0.001245 0.827 0.832
120 13269 3809 0.734 0.001921 0.730 0.738
## Univariable Cox Proportional Hazard Model for: SEX_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SEX_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
SEX_FFemale -0.481575 0.617810 0.008657 -55.63 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
SEX_FFemale 0.6178 1.619 0.6074 0.6284
Concordance= 0.557 (se = 0.001 )
Rsquare= 0.012 (max possible= 0.994 )
Likelihood ratio test= 3214 on 1 df, p=0
Wald test = 3094 on 1 df, p=0
Score (logrank) test = 3155 on 1 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: SEX_F



RACE_F
uni_var(test_var = "RACE_F", data_imp = data)
_________________________________________________
## RACE_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RACE_F, data = data)
n events median 0.95LCL 0.95UCL
RACE_F=White 261259 56388 NA NA NA
RACE_F=Black 1814 774 72.5 63.3 86.3
RACE_F=Other/Unk 5100 939 NA NA NA
RACE_F=Asian 916 259 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RACE_F, data = data)
RACE_F=White
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 218800 14767 0.940 0.000477 0.939 0.941
24 188370 11217 0.890 0.000647 0.889 0.891
36 156443 8572 0.847 0.000766 0.845 0.848
48 129626 6055 0.812 0.000857 0.810 0.813
60 105308 4434 0.781 0.000938 0.780 0.783
120 25670 10075 0.663 0.001420 0.660 0.666
RACE_F=Black
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1347 301 0.826 0.00913 0.808 0.844
24 1070 163 0.723 0.01102 0.701 0.745
36 838 101 0.650 0.01207 0.626 0.674
48 653 74 0.588 0.01288 0.563 0.614
60 499 50 0.540 0.01354 0.514 0.567
120 108 75 0.417 0.01704 0.385 0.452
RACE_F=Other/Unk
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4212 222 0.953 0.00308 0.947 0.959
24 3654 200 0.906 0.00438 0.897 0.914
36 3067 153 0.865 0.00528 0.855 0.876
48 2598 93 0.837 0.00585 0.826 0.849
60 2170 76 0.811 0.00640 0.798 0.823
120 628 177 0.711 0.00930 0.693 0.730
RACE_F=Asian
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 723 88 0.898 0.0103 0.878 0.918
24 582 70 0.806 0.0140 0.779 0.834
36 450 44 0.739 0.0160 0.709 0.772
48 351 22 0.700 0.0173 0.667 0.735
60 273 14 0.670 0.0183 0.635 0.706
120 71 20 0.599 0.0228 0.556 0.645
## Univariable Cox Proportional Hazard Model for: RACE_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RACE_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
RACE_FBlack 0.90375 2.46885 0.03619 24.969 < 2e-16 ***
RACE_FOther/Unk -0.18161 0.83392 0.03291 -5.519 3.40e-08 ***
RACE_FAsian 0.41481 1.51408 0.06228 6.660 2.73e-11 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
RACE_FBlack 2.4688 0.4050 2.2998 2.6503
RACE_FOther/Unk 0.8339 1.1992 0.7818 0.8895
RACE_FAsian 1.5141 0.6605 1.3401 1.7107
Concordance= 0.507 (se = 0 )
Rsquare= 0.002 (max possible= 0.994 )
Likelihood ratio test= 547.6 on 3 df, p=0
Wald test = 700.5 on 3 df, p=0
Score (logrank) test = 745.5 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: RACE_F



Hispanic
uni_var(test_var = "HISPANIC", data_imp = data)
_________________________________________________
## HISPANIC
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISPANIC, data = data)
n events median 0.95LCL 0.95UCL
HISPANIC=No 249614 53566 NA NA NA
HISPANIC=Yes 4270 1064 NA NA NA
HISPANIC=Unknown 15205 3730 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISPANIC, data = data)
HISPANIC=No
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 208776 14166 0.940 0.000489 0.939 0.941
24 179321 10766 0.889 0.000663 0.888 0.891
36 148375 8180 0.846 0.000786 0.844 0.848
48 122386 5761 0.811 0.000881 0.809 0.812
60 98924 4208 0.780 0.000964 0.778 0.782
120 23660 9338 0.663 0.001466 0.660 0.665
HISPANIC=Yes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3411 351 0.912 0.00448 0.904 0.921
24 2822 243 0.844 0.00591 0.832 0.856
36 2269 173 0.788 0.00689 0.775 0.802
48 1825 112 0.746 0.00758 0.731 0.761
60 1443 61 0.719 0.00807 0.703 0.735
120 323 111 0.631 0.01098 0.610 0.653
HISPANIC=Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12895 861 0.940 0.00197 0.937 0.944
24 11533 641 0.892 0.00263 0.887 0.897
36 10154 517 0.851 0.00308 0.845 0.857
48 9017 371 0.818 0.00339 0.812 0.825
60 7883 305 0.789 0.00366 0.782 0.796
120 2494 898 0.663 0.00509 0.653 0.673
## Univariable Cox Proportional Hazard Model for: HISPANIC
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISPANIC, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
HISPANICYes 0.24422 1.27662 0.03096 7.888 3.11e-15 ***
HISPANICUnknown -0.01566 0.98446 0.01695 -0.924 0.356
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
HISPANICYes 1.2766 0.7833 1.2015 1.356
HISPANICUnknown 0.9845 1.0158 0.9523 1.018
Concordance= 0.503 (se = 0.001 )
Rsquare= 0 (max possible= 0.994 )
Likelihood ratio test= 59 on 2 df, p=1.545e-13
Wald test = 63.67 on 2 df, p=1.499e-14
Score (logrank) test = 63.98 on 2 df, p=1.277e-14
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: HISPANIC



Insurance Status
uni_var(test_var = "INSURANCE_F", data_imp = data)
_________________________________________________
## INSURANCE_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ INSURANCE_F, data = data)
n events median 0.95LCL 0.95UCL
INSURANCE_F=Private 158775 18823 NA NA NA
INSURANCE_F=None 7722 2059 NA NA NA
INSURANCE_F=Medicaid 7837 2369 NA 139.6 NA
INSURANCE_F=Medicare 91803 34515 93 91.9 94.5
INSURANCE_F=Other Government 2952 594 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ INSURANCE_F, data = data)
INSURANCE_F=Private
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 135884 4548 0.970 0.000445 0.969 0.970
24 120193 3810 0.941 0.000626 0.940 0.942
36 102754 3053 0.916 0.000761 0.914 0.917
48 87253 2085 0.896 0.000860 0.894 0.897
60 72542 1551 0.879 0.000949 0.877 0.880
120 19583 3349 0.815 0.001438 0.812 0.817
INSURANCE_F=None
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6059 772 0.894 0.00361 0.887 0.901
24 5110 425 0.829 0.00454 0.820 0.838
36 4259 291 0.779 0.00512 0.769 0.789
48 3520 209 0.738 0.00558 0.727 0.749
60 2796 112 0.712 0.00588 0.701 0.724
120 662 232 0.620 0.00797 0.605 0.636
INSURANCE_F=Medicaid
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5920 1015 0.863 0.00401 0.855 0.871
24 4632 518 0.783 0.00495 0.773 0.793
36 3482 304 0.726 0.00556 0.715 0.737
48 2732 181 0.685 0.00604 0.673 0.697
60 2126 106 0.656 0.00642 0.643 0.668
120 462 225 0.547 0.00900 0.530 0.565
INSURANCE_F=Medicare
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 74826 8845 0.899 0.00102 0.897 0.901
24 61766 6750 0.815 0.00135 0.812 0.817
36 48712 5132 0.742 0.00156 0.739 0.745
48 38460 3712 0.681 0.00173 0.678 0.685
60 29794 2780 0.628 0.00187 0.624 0.631
120 5570 6468 0.409 0.00272 0.404 0.415
INSURANCE_F=Other Government
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2393 198 0.928 0.00493 0.918 0.938
24 1975 147 0.868 0.00668 0.855 0.881
36 1591 90 0.825 0.00773 0.810 0.840
48 1263 57 0.792 0.00855 0.776 0.809
60 992 25 0.775 0.00905 0.757 0.793
120 200 73 0.678 0.01424 0.651 0.707
## Univariable Cox Proportional Hazard Model for: INSURANCE_F
X matrix deemed to be singular; variable 5
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ INSURANCE_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
INSURANCE_FNone 0.976034 2.653909 0.023216 42.04 <2e-16 ***
INSURANCE_FMedicaid 1.251244 3.494687 0.021820 57.34 <2e-16 ***
INSURANCE_FMedicare 1.357996 3.888393 0.009098 149.26 <2e-16 ***
INSURANCE_FOther Government 0.718446 2.051243 0.041679 17.24 <2e-16 ***
INSURANCE_FUnknown NA NA 0.000000 NA NA
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
INSURANCE_FNone 2.654 0.3768 2.536 2.777
INSURANCE_FMedicaid 3.495 0.2861 3.348 3.647
INSURANCE_FMedicare 3.888 0.2572 3.820 3.958
INSURANCE_FOther Government 2.051 0.4875 1.890 2.226
INSURANCE_FUnknown NA NA NA NA
Concordance= 0.654 (se = 0.001 )
Rsquare= 0.087 (max possible= 0.994 )
Likelihood ratio test= 24472 on 4 df, p=0
Wald test = 22619 on 4 df, p=0
Score (logrank) test = 26080 on 4 df, p=0
Removed 2 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: INSURANCE_F



Overall Survival pre/post-ACA expansion
uni_var(test_var = "EXPN_GROUP", data_imp = no_Excludes)
_________________________________________________
## EXPN_GROUP
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EXPN_GROUP, data = no_Excludes)
n events median 0.95LCL 0.95UCL
EXPN_GROUP=Post-Expansion 40765 6213 NA NA NA
EXPN_GROUP=Pre-Expansion 201262 55061 164 163 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EXPN_GROUP, data = no_Excludes)
EXPN_GROUP=Post-Expansion
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 32031 2509 0.933 0.00129 0.931 0.936
24 23813 1682 0.880 0.00176 0.876 0.883
36 14017 1011 0.834 0.00219 0.829 0.838
48 8323 500 0.796 0.00268 0.790 0.801
60 5196 292 0.762 0.00324 0.755 0.768
EXPN_GROUP=Pre-Expansion
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 167970 14781 0.923 0.000610 0.922 0.924
24 146437 10748 0.862 0.000805 0.860 0.864
36 125987 8094 0.812 0.000929 0.810 0.814
48 106709 5794 0.773 0.001019 0.771 0.775
60 87635 4282 0.739 0.001095 0.737 0.742
120 21945 10058 0.609 0.001556 0.606 0.613
## Univariable Cox Proportional Hazard Model for: EXPN_GROUP
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EXPN_GROUP, data = no_Excludes)
n= 242027, number of events= 61274
coef exp(coef) se(coef) z Pr(>|z|)
EXPN_GROUPPre-Expansion 0.12101 1.12863 0.01357 8.914 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
EXPN_GROUPPre-Expansion 1.129 0.886 1.099 1.159
Concordance= 0.507 (se = 0.001 )
Rsquare= 0 (max possible= 0.997 )
Likelihood ratio test= 81.89 on 1 df, p=0
Wald test = 79.46 on 1 df, p=0
Score (logrank) test = 79.56 on 1 df, p=0
## Unadjusted Kaplan Meier Overall Survival Curve for: EXPN_GROUP



Education
uni_var(test_var = "EDUCATION_F", data_imp = data)
_________________________________________________
## EDUCATION_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EDUCATION_F, data = data)
1151 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
EDUCATION_F=21% or more 27806 7905 160 152 NA
EDUCATION_F=13 - 20.9% 58222 14533 164 163 NA
EDUCATION_F=7 - 12.9% 93536 20301 NA NA NA
EDUCATION_F=Less than 7% 88374 15418 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EDUCATION_F, data = data)
1151 observations deleted due to missingness
EDUCATION_F=21% or more
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 22792 2307 0.913 0.00174 0.909 0.916
24 19236 1676 0.843 0.00230 0.838 0.847
36 15785 1182 0.788 0.00265 0.782 0.793
48 13087 823 0.744 0.00291 0.738 0.750
60 10610 572 0.709 0.00312 0.703 0.715
120 2492 1192 0.584 0.00440 0.575 0.592
EDUCATION_F=13 - 20.9%
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 48392 3908 0.929 0.00109 0.927 0.931
24 41196 2955 0.870 0.00147 0.867 0.873
36 34014 2133 0.822 0.00172 0.819 0.825
48 28033 1541 0.782 0.00191 0.778 0.786
60 22585 1145 0.747 0.00209 0.743 0.751
120 5455 2539 0.615 0.00310 0.609 0.621
EDUCATION_F=7 - 12.9%
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 78314 5291 0.940 0.000798 0.939 0.942
24 67355 4007 0.890 0.001081 0.888 0.892
36 55703 3159 0.845 0.001286 0.843 0.848
48 45996 2196 0.809 0.001442 0.807 0.812
60 37466 1573 0.779 0.001575 0.776 0.783
120 9241 3617 0.661 0.002373 0.656 0.665
EDUCATION_F=Less than 7%
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 74733 3822 0.954 0.000725 0.953 0.956
24 65237 2968 0.915 0.000995 0.913 0.917
36 54760 2361 0.879 0.001193 0.877 0.882
48 45678 1663 0.851 0.001347 0.848 0.853
60 37251 1266 0.825 0.001487 0.822 0.828
120 9231 2969 0.720 0.002335 0.715 0.725
## Univariable Cox Proportional Hazard Model for: EDUCATION_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ EDUCATION_F, data = data)
n= 267938, number of events= 58157
(1151 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
EDUCATION_F13 - 20.9% -0.14791 0.86251 0.01398 -10.58 <2e-16 ***
EDUCATION_F7 - 12.9% -0.30804 0.73489 0.01326 -23.23 <2e-16 ***
EDUCATION_FLess than 7% -0.55635 0.57330 0.01383 -40.22 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
EDUCATION_F13 - 20.9% 0.8625 1.159 0.8392 0.8865
EDUCATION_F7 - 12.9% 0.7349 1.361 0.7160 0.7542
EDUCATION_FLess than 7% 0.5733 1.744 0.5580 0.5891
Concordance= 0.555 (se = 0.001 )
Rsquare= 0.008 (max possible= 0.994 )
Likelihood ratio test= 2066 on 3 df, p=0
Wald test = 2058 on 3 df, p=0
Score (logrank) test = 2088 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: EDUCATION_F



Urban/Rural
uni_var(test_var = "U_R_F", data_imp = data)
_________________________________________________
## U_R_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ U_R_F, data = data)
8149 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
U_R_F=Metro 220420 46829 NA NA NA
U_R_F=Urban 35956 8676 NA 164 NA
U_R_F=Rural 4564 1214 NA 142 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ U_R_F, data = data)
8149 observations deleted due to missingness
U_R_F=Metro
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 184457 12361 0.941 0.000518 0.940 0.942
24 159141 9272 0.891 0.000700 0.890 0.893
36 132439 7080 0.849 0.000828 0.847 0.851
48 109910 5028 0.814 0.000928 0.813 0.816
60 89333 3702 0.785 0.001015 0.783 0.787
120 21989 8340 0.669 0.001529 0.666 0.672
U_R_F=Urban
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 30127 2282 0.933 0.00136 0.930 0.936
24 25674 1762 0.876 0.00183 0.873 0.880
36 21064 1350 0.827 0.00216 0.823 0.831
48 17335 922 0.788 0.00241 0.783 0.793
60 14075 664 0.755 0.00263 0.750 0.760
120 3357 1508 0.625 0.00396 0.617 0.632
U_R_F=Rural
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3794 319 0.926 0.00397 0.919 0.934
24 3173 261 0.860 0.00542 0.849 0.870
36 2618 186 0.806 0.00635 0.794 0.819
48 2110 137 0.760 0.00710 0.747 0.774
60 1707 83 0.728 0.00764 0.713 0.743
120 393 201 0.593 0.01126 0.571 0.616
## Univariable Cox Proportional Hazard Model for: U_R_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ U_R_F, data = data)
n= 260940, number of events= 56719
(8149 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
U_R_FUrban 0.14894 1.16060 0.01169 12.742 <2e-16 ***
U_R_FRural 0.26840 1.30787 0.02907 9.233 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
U_R_FUrban 1.161 0.8616 1.134 1.187
U_R_FRural 1.308 0.7646 1.235 1.385
Concordance= 0.511 (se = 0.001 )
Rsquare= 0.001 (max possible= 0.994 )
Likelihood ratio test= 223.7 on 2 df, p=0
Wald test = 233.7 on 2 df, p=0
Score (logrank) test = 234.5 on 2 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: U_R_F



Year
uni_var(test_var = "YEAR_OF_DIAGNOSIS", data_imp = data)
_________________________________________________
## YEAR_OF_DIAGNOSIS
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ YEAR_OF_DIAGNOSIS, data = data)
n events median 0.95LCL 0.95UCL
YEAR_OF_DIAGNOSIS=2004 17756 5693 NA NA NA
YEAR_OF_DIAGNOSIS=2005 19269 5768 NA 154.8 NA
YEAR_OF_DIAGNOSIS=2006 19484 5845 NA NA NA
YEAR_OF_DIAGNOSIS=2007 20220 5632 NA 131.0 NA
YEAR_OF_DIAGNOSIS=2008 21053 5819 NA NA NA
YEAR_OF_DIAGNOSIS=2009 21938 5455 NA NA NA
YEAR_OF_DIAGNOSIS=2010 21967 5136 95.9 95.5 NA
YEAR_OF_DIAGNOSIS=2011 23165 4991 NA NA NA
YEAR_OF_DIAGNOSIS=2012 23949 4338 71.8 71.7 NA
YEAR_OF_DIAGNOSIS=2013 25405 3982 NA NA NA
YEAR_OF_DIAGNOSIS=2014 26469 3217 NA NA NA
YEAR_OF_DIAGNOSIS=2015 28414 2484 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ YEAR_OF_DIAGNOSIS, data = data)
YEAR_OF_DIAGNOSIS=2004
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 15516 1034 0.940 0.00182 0.936 0.943
24 14269 863 0.886 0.00246 0.882 0.891
36 13302 724 0.841 0.00285 0.835 0.847
48 12532 536 0.807 0.00310 0.801 0.813
60 11768 450 0.778 0.00328 0.771 0.784
120 7573 1546 0.664 0.00388 0.656 0.671
YEAR_OF_DIAGNOSIS=2005
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 16983 1068 0.943 0.00170 0.939 0.946
24 15773 884 0.893 0.00229 0.889 0.898
36 14840 712 0.852 0.00264 0.847 0.858
48 14067 542 0.821 0.00287 0.816 0.827
60 13212 484 0.793 0.00305 0.787 0.799
120 8494 1615 0.684 0.00364 0.677 0.691
YEAR_OF_DIAGNOSIS=2006
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 17095 1148 0.939 0.00174 0.936 0.942
24 15838 899 0.889 0.00232 0.884 0.894
36 14741 824 0.842 0.00271 0.837 0.848
48 13742 662 0.804 0.00296 0.798 0.810
60 12837 502 0.774 0.00314 0.768 0.780
120 7254 1581 0.665 0.00373 0.658 0.672
YEAR_OF_DIAGNOSIS=2007
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 17630 1220 0.937 0.00174 0.934 0.941
24 16258 964 0.885 0.00231 0.881 0.890
36 15216 762 0.844 0.00265 0.838 0.849
48 14283 589 0.811 0.00288 0.805 0.816
60 13209 462 0.784 0.00304 0.778 0.790
120 3155 1570 0.669 0.00384 0.661 0.676
YEAR_OF_DIAGNOSIS=2008
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 18237 1286 0.937 0.00171 0.933 0.940
24 16741 1052 0.882 0.00230 0.877 0.886
36 15556 815 0.838 0.00264 0.833 0.844
48 14405 646 0.803 0.00287 0.797 0.809
60 13296 509 0.774 0.00304 0.768 0.780
120 1 1511 0.605 0.01704 0.572 0.639
YEAR_OF_DIAGNOSIS=2009
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 18834 1327 0.937 0.00168 0.934 0.940
24 17263 1044 0.884 0.00224 0.880 0.889
36 15919 806 0.842 0.00258 0.837 0.847
48 14816 623 0.809 0.00280 0.803 0.814
60 13557 527 0.779 0.00298 0.774 0.785
YEAR_OF_DIAGNOSIS=2010
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 18846 1362 0.935 0.00169 0.932 0.939
24 17290 1002 0.885 0.00223 0.880 0.889
36 15993 793 0.844 0.00256 0.839 0.849
48 14686 613 0.811 0.00279 0.805 0.816
60 13067 566 0.778 0.00299 0.772 0.784
YEAR_OF_DIAGNOSIS=2011
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 19678 1341 0.939 0.00161 0.936 0.942
24 17899 1095 0.886 0.00218 0.882 0.890
36 16321 857 0.843 0.00253 0.838 0.848
48 14534 708 0.805 0.00278 0.799 0.810
60 11729 521 0.774 0.00299 0.768 0.780
YEAR_OF_DIAGNOSIS=2012
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 20079 1376 0.939 0.00159 0.936 0.942
24 18148 1003 0.891 0.00211 0.887 0.895
36 16238 845 0.848 0.00247 0.844 0.853
48 13481 590 0.816 0.00272 0.810 0.821
60 5568 397 0.784 0.00306 0.778 0.790
YEAR_OF_DIAGNOSIS=2013
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 20733 1409 0.941 0.00153 0.938 0.944
24 18371 1052 0.891 0.00208 0.887 0.895
36 15290 816 0.849 0.00244 0.845 0.854
48 6677 549 0.810 0.00289 0.804 0.815
60 7 156 0.678 0.03851 0.607 0.758
YEAR_OF_DIAGNOSIS=2014
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 20961 1400 0.943 0.00149 0.940 0.946
24 17157 968 0.896 0.00203 0.892 0.900
36 7375 663 0.852 0.00259 0.847 0.857
48 5 186 0.763 0.01390 0.736 0.790
YEAR_OF_DIAGNOSIS=2015
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 20490 1407 0.944 0.00145 0.941 0.947
24 8669 824 0.894 0.00223 0.890 0.898
36 7 253 0.730 0.03242 0.669 0.797
## Univariable Cox Proportional Hazard Model for: YEAR_OF_DIAGNOSIS
X matrix deemed to be singular; variable 12
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ YEAR_OF_DIAGNOSIS, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
YEAR_OF_DIAGNOSIS2005 -0.053118 0.948268 0.018795 -2.826 0.004711 **
YEAR_OF_DIAGNOSIS2006 0.021053 1.021276 0.018853 1.117 0.264123
YEAR_OF_DIAGNOSIS2007 0.002556 1.002560 0.019105 0.134 0.893555
YEAR_OF_DIAGNOSIS2008 0.069987 1.072494 0.019028 3.678 0.000235 ***
YEAR_OF_DIAGNOSIS2009 0.036219 1.036883 0.019392 1.868 0.061795 .
YEAR_OF_DIAGNOSIS2010 0.049316 1.050552 0.019750 2.497 0.012523 *
YEAR_OF_DIAGNOSIS2011 0.074201 1.077023 0.019964 3.717 0.000202 ***
YEAR_OF_DIAGNOSIS2012 0.013694 1.013788 0.020779 0.659 0.509882
YEAR_OF_DIAGNOSIS2013 0.030229 1.030691 0.021360 1.415 0.157002
YEAR_OF_DIAGNOSIS2014 -0.003917 0.996091 0.022838 -0.171 0.863837
YEAR_OF_DIAGNOSIS2015 0.006329 1.006349 0.024957 0.254 0.799809
YEAR_OF_DIAGNOSIS2016 NA NA 0.000000 NA NA
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
YEAR_OF_DIAGNOSIS2005 0.9483 1.0546 0.9140 0.9839
YEAR_OF_DIAGNOSIS2006 1.0213 0.9792 0.9842 1.0597
YEAR_OF_DIAGNOSIS2007 1.0026 0.9974 0.9657 1.0408
YEAR_OF_DIAGNOSIS2008 1.0725 0.9324 1.0332 1.1132
YEAR_OF_DIAGNOSIS2009 1.0369 0.9644 0.9982 1.0771
YEAR_OF_DIAGNOSIS2010 1.0506 0.9519 1.0107 1.0920
YEAR_OF_DIAGNOSIS2011 1.0770 0.9285 1.0357 1.1200
YEAR_OF_DIAGNOSIS2012 1.0138 0.9864 0.9733 1.0559
YEAR_OF_DIAGNOSIS2013 1.0307 0.9702 0.9884 1.0748
YEAR_OF_DIAGNOSIS2014 0.9961 1.0039 0.9525 1.0417
YEAR_OF_DIAGNOSIS2015 1.0063 0.9937 0.9583 1.0568
YEAR_OF_DIAGNOSIS2016 NA NA NA NA
Concordance= 0.507 (se = 0.001 )
Rsquare= 0 (max possible= 0.994 )
Likelihood ratio test= 69.6 on 11 df, p=1.453e-10
Wald test = 69.29 on 11 df, p=1.667e-10
Score (logrank) test = 69.33 on 11 df, p=1.64e-10
Removed 2 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: YEAR_OF_DIAGNOSIS
This manual palette can handle a maximum of 10 values. You have supplied 12.



Primary Site
uni_var(test_var = "SITE_TEXT", data_imp = data)
_________________________________________________
## SITE_TEXT
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SITE_TEXT, data = data)
n events median 0.95LCL 0.95UCL
SITE_TEXT=C00.0 External Lip: Upper NOS 6 1 NA NA NA
SITE_TEXT=C00.1 External Lip: Lower NOS 8 2 NA 56.2 NA
SITE_TEXT=C00.2 External Lip: NOS 1 0 NA NA NA
SITE_TEXT=C00.3 Lip: Upper Mucosa 3 2 15.8 10.6 NA
SITE_TEXT=C00.4 Lip: Lower Mucosa 6 3 34.0 25.4 NA
SITE_TEXT=C00.5 Lip: Mucosa NOS 2 0 NA NA NA
SITE_TEXT=C00.6 Lip: Commissure 1 0 NA NA NA
SITE_TEXT=C00.9 Lip, NOS 1 1 85.5 NA NA
SITE_TEXT=C44.0 Skin of lip, NOS 451 111 155.0 139.4 NA
SITE_TEXT=C44.1 Eyelid 768 205 NA NA NA
SITE_TEXT=C44.2 External ear 7522 1857 155.0 143.4 NA
SITE_TEXT=C44.3 Skin of ear and unspecified parts of face 22996 6261 138.9 134.1 144.5
SITE_TEXT=C44.4 Skin of scalp and neck 20868 6011 146.2 139.1 161.5
SITE_TEXT=C44.5 Skin of trunk 84369 14949 NA NA NA
SITE_TEXT=C44.6 Skin of upper limb and shoulder 65905 11730 NA 164.6 NA
SITE_TEXT=C44.7 Skin of lower limb and hip 52572 8181 NA NA NA
SITE_TEXT=C44.8 Overlapping lesion of skin 288 102 125.5 87.0 NA
SITE_TEXT=C44.9 Skin, NOS 11444 7850 10.7 10.2 11.3
SITE_TEXT=C51.0 Labium majus 127 57 57.3 39.4 NA
SITE_TEXT=C51.1 Labium minus 96 50 58.4 40.4 127.8
SITE_TEXT=C51.2 Clitoris 46 32 23.3 16.1 50.8
SITE_TEXT=C51.8 Overlapping lesion of vulva 46 25 41.4 30.5 NA
SITE_TEXT=C51.9 Vulva, NOS 1121 593 45.1 39.3 54.3
SITE_TEXT=C52.9 Vagina, NOS 388 311 18.5 17.0 20.4
SITE_TEXT=C60.0 Prepuce 8 6 17.9 13.9 NA
SITE_TEXT=C60.1 Glans penis 13 6 79.5 33.4 NA
SITE_TEXT=C60.2 Body of penis 2 1 32.0 32.0 NA
SITE_TEXT=C60.8 Overlapping lesion of penis 1 1 73.2 NA NA
SITE_TEXT=C60.9 Penis 30 12 NA 40.0 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SITE_TEXT, data = data)
SITE_TEXT=C00.0 External Lip: Upper NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6 0 1.000 0.000 1.000 1
24 5 1 0.833 0.152 0.583 1
36 4 0 0.833 0.152 0.583 1
48 3 0 0.833 0.152 0.583 1
60 3 0 0.833 0.152 0.583 1
SITE_TEXT=C00.1 External Lip: Lower NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 8 0 1.000 0.000 1.000 1
24 7 1 0.875 0.117 0.673 1
36 7 0 0.875 0.117 0.673 1
48 6 0 0.875 0.117 0.673 1
60 3 1 0.656 0.209 0.352 1
SITE_TEXT=C00.2 External Lip: NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
SITE_TEXT=C00.3 Lip: Upper Mucosa
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12.000 1.000 1.000 0.500 0.354 0.125 1.000
SITE_TEXT=C00.4 Lip: Lower Mucosa
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5 1 0.833 0.152 0.583 1
24 5 0 0.833 0.152 0.583 1
36 1 2 0.444 0.222 0.167 1
48 1 0 0.444 0.222 0.167 1
SITE_TEXT=C00.5 Lip: Mucosa NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2 0 1 0 1 1
24 2 0 1 0 1 1
36 1 0 1 0 1 1
48 1 0 1 0 1 1
60 1 0 1 0 1 1
SITE_TEXT=C00.6 Lip: Commissure
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1 0 1 0 1 1
SITE_TEXT=C00.9 Lip, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1 0 1 0 1 1
24 1 0 1 0 1 1
36 1 0 1 0 1 1
48 1 0 1 0 1 1
60 1 0 1 0 1 1
SITE_TEXT=C44.0 Skin of lip, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 384 18 0.958 0.00975 0.939 0.977
24 339 21 0.903 0.01474 0.875 0.933
36 283 20 0.847 0.01848 0.811 0.884
48 222 13 0.804 0.02101 0.764 0.846
60 179 12 0.757 0.02378 0.712 0.805
120 39 24 0.595 0.03748 0.526 0.673
SITE_TEXT=C44.1 Eyelid
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 658 39 0.946 0.00835 0.930 0.963
24 559 41 0.885 0.01216 0.861 0.909
36 460 31 0.832 0.01464 0.804 0.862
48 387 27 0.781 0.01679 0.748 0.814
60 314 20 0.737 0.01849 0.701 0.774
120 74 46 0.566 0.02779 0.514 0.623
SITE_TEXT=C44.2 External ear
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6388 335 0.952 0.00254 0.947 0.957
24 5443 358 0.896 0.00374 0.889 0.904
36 4535 280 0.847 0.00454 0.838 0.856
48 3703 261 0.795 0.00529 0.785 0.806
60 3010 154 0.759 0.00579 0.748 0.771
120 671 420 0.592 0.00907 0.575 0.610
SITE_TEXT=C44.3 Skin of ear and unspecified parts of face
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 19618 1038 0.952 0.00146 0.949 0.955
24 16652 1257 0.888 0.00221 0.884 0.892
36 13604 1007 0.831 0.00271 0.825 0.836
48 11087 760 0.781 0.00309 0.775 0.787
60 8834 632 0.733 0.00345 0.726 0.740
120 1928 1398 0.550 0.00531 0.539 0.560
SITE_TEXT=C44.4 Skin of scalp and neck
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 17584 1258 0.936 0.00175 0.933 0.939
24 14643 1354 0.861 0.00254 0.856 0.866
36 11674 1078 0.793 0.00307 0.787 0.799
48 9306 717 0.740 0.00344 0.733 0.747
60 7379 481 0.698 0.00374 0.691 0.706
120 1591 1034 0.543 0.00548 0.533 0.554
SITE_TEXT=C44.5 Skin of trunk
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 71804 3073 0.961 0.000689 0.960 0.962
24 62422 3079 0.918 0.001004 0.916 0.920
36 52198 2447 0.880 0.001227 0.877 0.882
48 43541 1822 0.847 0.001403 0.844 0.849
60 35620 1219 0.821 0.001542 0.818 0.824
120 8995 2932 0.714 0.002393 0.710 0.719
SITE_TEXT=C44.6 Skin of upper limb and shoulder
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 56735 1929 0.969 0.00070 0.967 0.970
24 49405 2356 0.927 0.00108 0.925 0.929
36 41368 1884 0.889 0.00134 0.886 0.892
48 34326 1392 0.857 0.00155 0.854 0.860
60 27935 1112 0.827 0.00174 0.823 0.830
120 6747 2689 0.699 0.00286 0.693 0.704
SITE_TEXT=C44.7 Skin of lower limb and hip
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 45292 1556 0.968 0.000787 0.967 0.970
24 39623 1714 0.930 0.001180 0.928 0.933
36 33349 1441 0.894 0.001467 0.891 0.897
48 28111 953 0.867 0.001669 0.864 0.870
60 23016 768 0.841 0.001860 0.838 0.845
120 6000 1537 0.753 0.002833 0.747 0.758
SITE_TEXT=C44.8 Overlapping lesion of skin
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 223 42 0.847 0.0218 0.805 0.891
24 187 19 0.772 0.0257 0.724 0.824
36 157 14 0.712 0.0283 0.659 0.770
48 121 6 0.683 0.0295 0.628 0.744
60 101 5 0.653 0.0312 0.594 0.717
120 24 14 0.518 0.0422 0.441 0.608
SITE_TEXT=C44.9 Skin, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4946 5732 0.480 0.00479 0.471 0.489
24 3382 1127 0.366 0.00471 0.357 0.375
36 2449 477 0.310 0.00463 0.301 0.320
48 1888 201 0.283 0.00461 0.274 0.292
60 1463 119 0.263 0.00463 0.255 0.273
120 332 172 0.215 0.00522 0.205 0.226
SITE_TEXT=C51.0 Labium majus
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 98 15 0.874 0.0306 0.816 0.936
24 74 15 0.736 0.0416 0.659 0.822
36 56 11 0.621 0.0475 0.534 0.721
48 44 6 0.551 0.0500 0.461 0.658
60 34 6 0.472 0.0521 0.381 0.587
120 3 4 0.388 0.0611 0.285 0.528
SITE_TEXT=C51.1 Labium minus
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 79 14 0.852 0.0366 0.783 0.927
24 63 12 0.717 0.0471 0.630 0.816
36 47 9 0.605 0.0526 0.510 0.717
48 35 6 0.520 0.0555 0.422 0.641
60 28 2 0.489 0.0564 0.390 0.613
120 5 6 0.329 0.0705 0.217 0.501
SITE_TEXT=C51.2 Clitoris
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 30 14 0.686 0.0696 0.563 0.837
24 20 9 0.477 0.0758 0.349 0.651
36 15 4 0.377 0.0745 0.256 0.556
48 10 1 0.350 0.0739 0.232 0.530
60 5 2 0.263 0.0771 0.148 0.467
SITE_TEXT=C51.8 Overlapping lesion of vulva
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 40 5 0.891 0.0459 0.806 0.986
24 33 4 0.799 0.0600 0.690 0.926
36 16 11 0.503 0.0808 0.367 0.689
48 13 1 0.470 0.0821 0.333 0.662
60 10 3 0.361 0.0837 0.229 0.569
120 3 0 0.361 0.0837 0.229 0.569
SITE_TEXT=C51.9 Vulva, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 884 175 0.839 0.0112 0.817 0.861
24 637 170 0.670 0.0146 0.642 0.699
36 472 103 0.555 0.0159 0.525 0.587
48 353 58 0.482 0.0165 0.451 0.516
60 266 30 0.437 0.0169 0.405 0.471
120 56 55 0.301 0.0204 0.263 0.344
SITE_TEXT=C52.9 Vagina, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 246 130 0.6571 0.0244 0.6109 0.707
24 138 100 0.3841 0.0253 0.3376 0.437
36 74 46 0.2492 0.0230 0.2079 0.299
48 49 17 0.1890 0.0216 0.1510 0.237
60 33 6 0.1633 0.0211 0.1268 0.210
120 6 11 0.0906 0.0208 0.0578 0.142
SITE_TEXT=C60.0 Prepuce
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6 2 0.750 0.153 0.5027 1.000
24 3 3 0.375 0.171 0.1533 0.917
36 3 0 0.375 0.171 0.1533 0.917
48 2 1 0.250 0.153 0.0753 0.830
60 1 0 0.250 0.153 0.0753 0.830
120 1 0 0.250 0.153 0.0753 0.830
SITE_TEXT=C60.1 Glans penis
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 13 0 1.000 0.000 1.000 1.000
24 8 3 0.750 0.125 0.541 1.000
36 5 1 0.656 0.140 0.432 0.997
48 4 1 0.525 0.162 0.286 0.962
60 4 0 0.525 0.162 0.286 0.962
120 1 1 0.350 0.179 0.128 0.955
SITE_TEXT=C60.2 Body of penis
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2 0 1.0 0.000 1.000 1
24 2 0 1.0 0.000 1.000 1
36 1 1 0.5 0.354 0.125 1
48 1 0 0.5 0.354 0.125 1
60 1 0 0.5 0.354 0.125 1
SITE_TEXT=C60.8 Overlapping lesion of penis
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1 0 1 0 1 1
24 1 0 1 0 1 1
36 1 0 1 0 1 1
48 1 0 1 0 1 1
60 1 0 1 0 1 1
SITE_TEXT=C60.9 Penis
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 27 1 0.966 0.0339 0.901 1.000
24 22 5 0.787 0.0773 0.649 0.954
36 17 3 0.674 0.0897 0.519 0.875
48 12 1 0.634 0.0927 0.476 0.845
60 8 2 0.517 0.1070 0.344 0.775
120 1 0 0.517 0.1070 0.344 0.775
## Univariable Cox Proportional Hazard Model for: SITE_TEXT
Loglik converged before variable 2,5,6 ; beta may be infinite. X matrix deemed to be singular; variable 7 19
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SITE_TEXT, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
SITE_TEXTC00.1 External Lip: Lower NOS 4.050e-01 1.499e+00 1.225e+00 0.331 0.7409
SITE_TEXTC00.2 External Lip: NOS -7.597e+00 5.018e-04 3.025e+02 -0.025 0.9800
SITE_TEXTC00.3 Lip: Upper Mucosa 2.616e+00 1.368e+01 1.225e+00 2.136 0.0327 *
SITE_TEXTC00.4 Lip: Lower Mucosa 1.633e+00 5.117e+00 1.155e+00 1.414 0.1574
SITE_TEXTC00.5 Lip: Mucosa NOS -7.528e+00 5.379e-04 7.366e+01 -0.102 0.9186
SITE_TEXTC00.6 Lip: Commissure -7.566e+00 5.179e-04 1.787e+02 -0.042 0.9662
SITE_TEXTC00.8 Lip: Overlapping NA NA 0.000e+00 NA NA
SITE_TEXTC00.9 Lip, NOS 1.438e+00 4.210e+00 1.414e+00 1.017 0.3094
SITE_TEXTC44.0 Skin of lip, NOS 4.267e-01 1.532e+00 1.004e+00 0.425 0.6710
SITE_TEXTC44.1 Eyelid 5.092e-01 1.664e+00 1.002e+00 0.508 0.6115
SITE_TEXTC44.2 External ear 4.429e-01 1.557e+00 1.000e+00 0.443 0.6579
SITE_TEXTC44.3 Skin of ear and unspecified parts of face 5.575e-01 1.746e+00 1.000e+00 0.557 0.5772
SITE_TEXTC44.4 Skin of scalp and neck 6.551e-01 1.925e+00 1.000e+00 0.655 0.5124
SITE_TEXTC44.5 Skin of trunk 7.515e-02 1.078e+00 1.000e+00 0.075 0.9401
SITE_TEXTC44.6 Skin of upper limb and shoulder 7.490e-02 1.078e+00 1.000e+00 0.075 0.9403
SITE_TEXTC44.7 Skin of lower limb and hip -8.118e-02 9.220e-01 1.000e+00 -0.081 0.9353
SITE_TEXTC44.8 Overlapping lesion of skin 9.134e-01 2.493e+00 1.005e+00 0.909 0.3634
SITE_TEXTC44.9 Skin, NOS 2.265e+00 9.633e+00 1.000e+00 2.265 0.0235 *
SITE_TEXTC50.0 Nipple NA NA 0.000e+00 NA NA
SITE_TEXTC51.0 Labium majus 1.289e+00 3.628e+00 1.009e+00 1.278 0.2014
SITE_TEXTC51.1 Labium minus 1.339e+00 3.817e+00 1.010e+00 1.326 0.1848
SITE_TEXTC51.2 Clitoris 2.063e+00 7.866e+00 1.016e+00 2.031 0.0423 *
SITE_TEXTC51.8 Overlapping lesion of vulva 1.451e+00 4.269e+00 1.020e+00 1.423 0.1547
SITE_TEXTC51.9 Vulva, NOS 1.470e+00 4.348e+00 1.001e+00 1.468 0.1420
SITE_TEXTC52.9 Vagina, NOS 2.321e+00 1.018e+01 1.002e+00 2.317 0.0205 *
SITE_TEXTC60.0 Prepuce 1.877e+00 6.532e+00 1.080e+00 1.737 0.0823 .
SITE_TEXTC60.1 Glans penis 1.165e+00 3.204e+00 1.080e+00 1.078 0.2810
SITE_TEXTC60.2 Body of penis 1.087e+00 2.966e+00 1.414e+00 0.769 0.4420
SITE_TEXTC60.8 Overlapping lesion of penis 1.556e+00 4.742e+00 1.414e+00 1.101 0.2711
SITE_TEXTC60.9 Penis 1.047e+00 2.849e+00 1.041e+00 1.006 0.3145
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
SITE_TEXTC00.1 External Lip: Lower NOS 1.499e+00 6.670e-01 1.360e-01 1.654e+01
SITE_TEXTC00.2 External Lip: NOS 5.018e-04 1.993e+03 1.546e-261 1.628e+254
SITE_TEXTC00.3 Lip: Upper Mucosa 1.368e+01 7.311e-02 1.240e+00 1.509e+02
SITE_TEXTC00.4 Lip: Lower Mucosa 5.117e+00 1.954e-01 5.323e-01 4.919e+01
SITE_TEXTC00.5 Lip: Mucosa NOS 5.379e-04 1.859e+03 1.069e-66 2.706e+59
SITE_TEXTC00.6 Lip: Commissure 5.179e-04 1.931e+03 4.185e-156 6.409e+148
SITE_TEXTC00.8 Lip: Overlapping NA NA NA NA
SITE_TEXTC00.9 Lip, NOS 4.210e+00 2.375e-01 2.634e-01 6.731e+01
SITE_TEXTC44.0 Skin of lip, NOS 1.532e+00 6.527e-01 2.139e-01 1.097e+01
SITE_TEXTC44.1 Eyelid 1.664e+00 6.010e-01 2.333e-01 1.187e+01
SITE_TEXTC44.2 External ear 1.557e+00 6.422e-01 2.192e-01 1.106e+01
SITE_TEXTC44.3 Skin of ear and unspecified parts of face 1.746e+00 5.726e-01 2.459e-01 1.240e+01
SITE_TEXTC44.4 Skin of scalp and neck 1.925e+00 5.194e-01 2.712e-01 1.367e+01
SITE_TEXTC44.5 Skin of trunk 1.078e+00 9.276e-01 1.518e-01 7.654e+00
SITE_TEXTC44.6 Skin of upper limb and shoulder 1.078e+00 9.278e-01 1.518e-01 7.652e+00
SITE_TEXTC44.7 Skin of lower limb and hip 9.220e-01 1.085e+00 1.299e-01 6.546e+00
SITE_TEXTC44.8 Overlapping lesion of skin 2.493e+00 4.012e-01 3.478e-01 1.787e+01
SITE_TEXTC44.9 Skin, NOS 9.633e+00 1.038e-01 1.357e+00 6.840e+01
SITE_TEXTC50.0 Nipple NA NA NA NA
SITE_TEXTC51.0 Labium majus 3.628e+00 2.756e-01 5.024e-01 2.620e+01
SITE_TEXTC51.1 Labium minus 3.817e+00 2.620e-01 5.273e-01 2.763e+01
SITE_TEXTC51.2 Clitoris 7.866e+00 1.271e-01 1.075e+00 5.756e+01
SITE_TEXTC51.8 Overlapping lesion of vulva 4.269e+00 2.343e-01 5.784e-01 3.150e+01
SITE_TEXTC51.9 Vulva, NOS 4.348e+00 2.300e-01 6.114e-01 3.092e+01
SITE_TEXTC52.9 Vagina, NOS 1.018e+01 9.819e-02 1.430e+00 7.253e+01
SITE_TEXTC60.0 Prepuce 6.532e+00 1.531e-01 7.864e-01 5.425e+01
SITE_TEXTC60.1 Glans penis 3.204e+00 3.121e-01 3.858e-01 2.662e+01
SITE_TEXTC60.2 Body of penis 2.966e+00 3.371e-01 1.855e-01 4.742e+01
SITE_TEXTC60.8 Overlapping lesion of penis 4.742e+00 2.109e-01 2.966e-01 7.581e+01
SITE_TEXTC60.9 Penis 2.849e+00 3.510e-01 3.705e-01 2.191e+01
Concordance= 0.635 (se = 0.001 )
Rsquare= 0.081 (max possible= 0.994 )
Likelihood ratio test= 22616 on 28 df, p=0
Wald test = 33458 on 28 df, p=0
Score (logrank) test = 46775 on 28 df, p=0
Transformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisRemoved 3 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: SITE_TEXT
This manual palette can handle a maximum of 10 values. You have supplied 29.



Histology
uni_var(test_var = "HISTOLOGY_F_LIM", data_imp = data)
_________________________________________________
## HISTOLOGY_F_LIM
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISTOLOGY_F_LIM, data = data)
n events median 0.95LCL 0.95UCL
HISTOLOGY_F_LIM=8720 136954 33081 NA NA NA
HISTOLOGY_F_LIM=Other 132135 25279 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISTOLOGY_F_LIM, data = data)
HISTOLOGY_F_LIM=8720
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 112054 10919 0.916 0.000769 0.915 0.918
24 96719 6183 0.864 0.000974 0.862 0.865
36 81131 4512 0.821 0.001115 0.819 0.823
48 67828 3122 0.787 0.001222 0.785 0.789
60 55654 2307 0.758 0.001318 0.756 0.761
120 13991 5353 0.643 0.001919 0.639 0.647
HISTOLOGY_F_LIM=Other
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 113028 4459 0.964 0.000532 0.963 0.965
24 96957 5467 0.915 0.000818 0.913 0.917
36 79667 4358 0.871 0.001016 0.869 0.873
48 65400 3122 0.834 0.001168 0.832 0.836
60 52596 2267 0.803 0.001299 0.800 0.805
120 12486 4994 0.681 0.002035 0.677 0.685
## Univariable Cox Proportional Hazard Model for: HISTOLOGY_F_LIM
X matrix deemed to be singular; variable 2 3
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ HISTOLOGY_F_LIM, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
HISTOLOGY_F_LIM8720 0.244112 1.276487 0.008355 29.22 <2e-16 ***
HISTOLOGY_F_LIM8520 NA NA 0.000000 NA NA
HISTOLOGY_F_LIMOther NA NA 0.000000 NA NA
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
HISTOLOGY_F_LIM8720 1.276 0.7834 1.256 1.298
HISTOLOGY_F_LIM8520 NA NA NA NA
HISTOLOGY_F_LIMOther NA NA NA NA
Concordance= 0.544 (se = 0.001 )
Rsquare= 0.003 (max possible= 0.994 )
Likelihood ratio test= 860.8 on 1 df, p=0
Wald test = 853.6 on 1 df, p=0
Score (logrank) test = 857.8 on 1 df, p=0
Removed 3 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: HISTOLOGY_F_LIM



Grade
uni_var(test_var = "GRADE_F", data_imp = data)
_________________________________________________
## GRADE_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ GRADE_F, data = data)
n events median 0.95LCL 0.95UCL
GRADE_F=Gr I: Well Diff 589 125 NA NA NA
GRADE_F=Gr II: Mod Diff 816 157 NA NA NA
GRADE_F=Gr III: Poor Diff 1497 761 47 39.1 59.6
GRADE_F=Gr IV: Undiff/Anaplastic 521 217 82 59.9 114.8
GRADE_F=NA/Unkown 265666 57100 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ GRADE_F, data = data)
GRADE_F=Gr I: Well Diff
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 495 26 0.953 0.0091 0.935 0.971
24 423 28 0.896 0.0134 0.870 0.923
36 342 20 0.849 0.0163 0.818 0.882
48 267 12 0.816 0.0183 0.781 0.853
60 228 8 0.790 0.0199 0.752 0.830
120 61 30 0.651 0.0291 0.597 0.711
GRADE_F=Gr II: Mod Diff
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 708 29 0.962 0.00697 0.948 0.976
24 620 41 0.904 0.01094 0.883 0.926
36 528 27 0.862 0.01308 0.837 0.888
48 459 11 0.843 0.01395 0.817 0.871
60 392 10 0.824 0.01492 0.795 0.854
120 115 37 0.716 0.02165 0.675 0.760
GRADE_F=Gr III: Poor Diff
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1004 380 0.735 0.0117 0.713 0.758
24 746 170 0.606 0.0132 0.580 0.632
36 592 74 0.542 0.0137 0.516 0.569
48 483 47 0.497 0.0141 0.470 0.525
60 386 23 0.471 0.0144 0.444 0.500
120 90 58 0.366 0.0171 0.333 0.401
GRADE_F=Gr IV: Undiff/Anaplastic
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 384 86 0.825 0.0172 0.792 0.859
24 294 49 0.713 0.0210 0.673 0.756
36 227 31 0.632 0.0232 0.588 0.679
48 185 17 0.582 0.0243 0.537 0.632
60 153 11 0.546 0.0252 0.498 0.597
120 37 22 0.416 0.0325 0.357 0.485
GRADE_F=NA/Unkown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 222491 14857 0.941 0.000471 0.940 0.942
24 191593 11362 0.891 0.000639 0.889 0.892
36 159109 8718 0.847 0.000758 0.846 0.849
48 131834 6157 0.812 0.000850 0.811 0.814
60 107091 4522 0.782 0.000930 0.780 0.784
120 26174 10200 0.664 0.001406 0.661 0.667
## Univariable Cox Proportional Hazard Model for: GRADE_F
X matrix deemed to be singular; variable 4 5 6 7
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ GRADE_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
GRADE_FGr II: Mod Diff -0.214649 0.806825 0.119874 -1.791 0.0734 .
GRADE_FGr III: Poor Diff 1.189850 3.286589 0.096512 12.329 < 2e-16 ***
GRADE_FGr IV: Undiff/Anaplastic 0.888026 2.430326 0.112288 7.908 2.55e-15 ***
GRADE_F5 NA NA 0.000000 NA NA
GRADE_F6 NA NA 0.000000 NA NA
GRADE_F7 NA NA 0.000000 NA NA
GRADE_F8 NA NA 0.000000 NA NA
GRADE_FNA/Unkown 0.006778 1.006801 0.089541 0.076 0.9397
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
GRADE_FGr II: Mod Diff 0.8068 1.2394 0.6379 1.021
GRADE_FGr III: Poor Diff 3.2866 0.3043 2.7202 3.971
GRADE_FGr IV: Undiff/Anaplastic 2.4303 0.4115 1.9502 3.029
GRADE_F5 NA NA NA NA
GRADE_F6 NA NA NA NA
GRADE_F7 NA NA NA NA
GRADE_F8 NA NA NA NA
GRADE_FNA/Unkown 1.0068 0.9932 0.8447 1.200
Concordance= 0.507 (se = 0 )
Rsquare= 0.003 (max possible= 0.994 )
Likelihood ratio test= 874.7 on 4 df, p=0
Wald test = 1222 on 4 df, p=0
Score (logrank) test = 1361 on 4 df, p=0
Removed 5 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: GRADE_F



Clinical T Stage
uni_var(test_var = "TNM_CLIN_T", data_imp = data)
_________________________________________________
## TNM_CLIN_T
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_T, data = data)
7214 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_CLIN_T=N_A 1574 679 131.0 115.9 NA
TNM_CLIN_T=c0 3237 2060 13.4 12.1 15.1
TNM_CLIN_T=c1 14071 1652 NA NA NA
TNM_CLIN_T=c1A 39363 2098 95.5 95.5 NA
TNM_CLIN_T=c1B 15597 1119 97.1 NA NA
TNM_CLIN_T=c2 4134 864 NA NA NA
TNM_CLIN_T=c2A 25371 3496 NA NA NA
TNM_CLIN_T=c2B 6395 1587 141.2 124.0 NA
TNM_CLIN_T=c3 2398 859 100.5 92.8 113.3
TNM_CLIN_T=c3A 9810 2508 133.8 126.0 151.1
TNM_CLIN_T=c3B 7776 2953 77.7 72.9 81.9
TNM_CLIN_T=c4 1674 900 42.2 37.7 47.4
TNM_CLIN_T=c4A 4516 1746 80.1 75.4 86.8
TNM_CLIN_T=c4B 8256 4723 35.5 34.1 37.0
TNM_CLIN_T=cX 115943 29551 NA NA NA
TNM_CLIN_T=pIS 1760 263 NA 157.9 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_T, data = data)
7214 observations deleted due to missingness
TNM_CLIN_T=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1280 213 0.861 0.00885 0.844 0.878
24 1070 171 0.744 0.01131 0.722 0.766
36 935 93 0.678 0.01219 0.655 0.702
48 837 61 0.633 0.01268 0.608 0.658
60 761 30 0.610 0.01291 0.585 0.635
120 298 94 0.520 0.01407 0.493 0.548
TNM_CLIN_T=c0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1510 1501 0.518 0.00900 0.501 0.536
24 1037 316 0.404 0.00903 0.387 0.423
36 744 123 0.352 0.00902 0.335 0.370
48 555 54 0.324 0.00907 0.307 0.342
60 408 25 0.308 0.00920 0.290 0.326
120 72 34 0.262 0.01126 0.241 0.285
TNM_CLIN_T=c1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12185 242 0.982 0.00118 0.979 0.984
24 11045 257 0.960 0.00176 0.957 0.963
36 9697 251 0.937 0.00224 0.933 0.941
48 8219 207 0.916 0.00264 0.910 0.921
60 6686 177 0.894 0.00303 0.888 0.900
120 1163 465 0.777 0.00634 0.765 0.789
TNM_CLIN_T=c1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 32652 391 0.989 0.000554 0.988 0.990
24 27240 426 0.975 0.000866 0.973 0.977
36 20452 416 0.958 0.001185 0.956 0.960
48 14346 371 0.938 0.001570 0.935 0.941
60 8893 236 0.918 0.001983 0.915 0.922
TNM_CLIN_T=c1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12927 214 0.985 0.00103 0.983 0.987
24 10511 294 0.961 0.00173 0.957 0.964
36 7455 238 0.935 0.00234 0.931 0.940
48 4977 177 0.909 0.00302 0.903 0.915
60 2901 94 0.887 0.00371 0.879 0.894
TNM_CLIN_T=c2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3554 139 0.964 0.00300 0.958 0.970
24 3137 166 0.917 0.00455 0.908 0.926
36 2687 140 0.874 0.00560 0.863 0.885
48 2288 105 0.838 0.00639 0.826 0.851
60 1813 109 0.795 0.00729 0.781 0.809
120 241 189 0.640 0.01345 0.614 0.666
TNM_CLIN_T=c2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 21935 429 0.982 0.000871 0.980 0.984
24 18828 661 0.950 0.001469 0.948 0.953
36 15148 592 0.918 0.001938 0.914 0.922
48 12052 512 0.884 0.002381 0.879 0.888
60 9286 409 0.850 0.002814 0.845 0.856
120 1401 817 0.708 0.005778 0.696 0.719
TNM_CLIN_T=c2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5451 271 0.955 0.00269 0.949 0.960
24 4504 364 0.888 0.00422 0.879 0.896
36 3507 309 0.821 0.00534 0.811 0.832
48 2654 221 0.764 0.00621 0.752 0.776
60 1947 159 0.712 0.00701 0.699 0.726
120 245 245 0.542 0.01246 0.518 0.567
TNM_CLIN_T=c3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2030 177 0.922 0.00561 0.911 0.933
24 1735 181 0.838 0.00787 0.823 0.853
36 1390 175 0.749 0.00950 0.730 0.767
48 1078 121 0.679 0.01052 0.658 0.700
60 810 85 0.621 0.01137 0.599 0.643
120 91 113 0.460 0.01789 0.426 0.497
TNM_CLIN_T=c3A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 8452 348 0.962 0.00199 0.958 0.966
24 7078 561 0.895 0.00329 0.889 0.902
36 5449 526 0.823 0.00430 0.814 0.831
48 4240 356 0.764 0.00500 0.754 0.774
60 3188 245 0.715 0.00557 0.704 0.726
120 450 437 0.537 0.00972 0.519 0.557
TNM_CLIN_T=c3B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6573 535 0.928 0.00302 0.922 0.933
24 5134 808 0.808 0.00474 0.799 0.817
36 3708 642 0.698 0.00575 0.687 0.709
48 2704 355 0.625 0.00634 0.612 0.637
60 1938 221 0.568 0.00683 0.554 0.581
120 237 365 0.380 0.01055 0.359 0.401
TNM_CLIN_T=c4
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1224 334 0.792 0.0101 0.773 0.812
24 900 238 0.633 0.0123 0.609 0.657
36 683 127 0.539 0.0130 0.515 0.565
48 513 82 0.470 0.0134 0.445 0.497
60 395 48 0.423 0.0137 0.397 0.450
120 48 70 0.304 0.0170 0.272 0.339
TNM_CLIN_T=c4A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3774 380 0.912 0.00431 0.904 0.921
24 2932 477 0.791 0.00638 0.779 0.804
36 2226 316 0.699 0.00744 0.685 0.714
48 1684 220 0.625 0.00819 0.609 0.641
60 1232 129 0.571 0.00875 0.554 0.589
120 180 212 0.405 0.01253 0.381 0.430
TNM_CLIN_T=c4B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6226 1537 0.807 0.00442 0.799 0.816
24 4289 1404 0.617 0.00559 0.606 0.628
36 2906 785 0.495 0.00595 0.484 0.507
48 1982 451 0.411 0.00613 0.399 0.423
60 1364 224 0.359 0.00627 0.347 0.372
120 137 313 0.220 0.00837 0.204 0.237
TNM_CLIN_T=cX
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 98039 8110 0.927 0.000780 0.926 0.929
24 88553 4914 0.879 0.000993 0.878 0.881
36 79759 3927 0.839 0.001136 0.837 0.842
48 72147 2773 0.809 0.001231 0.807 0.812
60 64679 2288 0.783 0.001310 0.780 0.785
120 21806 6523 0.676 0.001710 0.673 0.680
TNM_CLIN_T=pIS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1515 37 0.977 0.00366 0.970 0.985
24 1284 50 0.943 0.00593 0.932 0.955
36 1043 45 0.907 0.00776 0.892 0.923
48 808 37 0.872 0.00941 0.854 0.890
60 619 26 0.840 0.01094 0.819 0.862
120 108 65 0.679 0.02209 0.637 0.724
## Univariable Cox Proportional Hazard Model for: TNM_CLIN_T
X matrix deemed to be singular; variable 5 6 10 17 18 20
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_T, data = data)
n= 261875, number of events= 57058
(7214 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_CLIN_Tc0 1.25345 3.50242 0.04431 28.286 < 2e-16 ***
TNM_CLIN_Tc1 -1.26284 0.28285 0.04560 -27.693 < 2e-16 ***
TNM_CLIN_Tc1A -1.72766 0.17770 0.04424 -39.056 < 2e-16 ***
TNM_CLIN_Tc1B -1.38231 0.25100 0.04873 -28.367 < 2e-16 ***
TNM_CLIN_Tc1C NA NA 0.00000 NA NA
TNM_CLIN_Tc1MI NA NA 0.00000 NA NA
TNM_CLIN_Tc2 -0.63379 0.53058 0.05130 -12.353 < 2e-16 ***
TNM_CLIN_Tc2A -0.98645 0.37290 0.04197 -23.505 < 2e-16 ***
TNM_CLIN_Tc2B -0.32012 0.72606 0.04589 -6.975 3.06e-12 ***
TNM_CLIN_Tc2C NA NA 0.00000 NA NA
TNM_CLIN_Tc3 0.01776 1.01792 0.05138 0.346 0.73
TNM_CLIN_Tc3A -0.31928 0.72667 0.04330 -7.375 1.65e-13 ***
TNM_CLIN_Tc3B 0.18744 1.20616 0.04261 4.399 1.09e-05 ***
TNM_CLIN_Tc4 0.64894 1.91350 0.05087 12.757 < 2e-16 ***
TNM_CLIN_Tc4A 0.18253 1.20024 0.04527 4.032 5.52e-05 ***
TNM_CLIN_Tc4B 0.80048 2.22661 0.04112 19.468 < 2e-16 ***
TNM_CLIN_Tc4C NA NA 0.00000 NA NA
TNM_CLIN_Tc4D NA NA 0.00000 NA NA
TNM_CLIN_TcX -0.60555 0.54577 0.03882 -15.600 < 2e-16 ***
TNM_CLIN_TpA NA NA 0.00000 NA NA
TNM_CLIN_TpIS -0.89767 0.40752 0.07265 -12.357 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_CLIN_Tc0 3.5024 0.2855 3.2111 3.8202
TNM_CLIN_Tc1 0.2828 3.5354 0.2587 0.3093
TNM_CLIN_Tc1A 0.1777 5.6275 0.1629 0.1938
TNM_CLIN_Tc1B 0.2510 3.9841 0.2281 0.2762
TNM_CLIN_Tc1C NA NA NA NA
TNM_CLIN_Tc1MI NA NA NA NA
TNM_CLIN_Tc2 0.5306 1.8847 0.4798 0.5867
TNM_CLIN_Tc2A 0.3729 2.6817 0.3435 0.4049
TNM_CLIN_Tc2B 0.7261 1.3773 0.6636 0.7944
TNM_CLIN_Tc2C NA NA NA NA
TNM_CLIN_Tc3 1.0179 0.9824 0.9204 1.1258
TNM_CLIN_Tc3A 0.7267 1.3761 0.6676 0.7910
TNM_CLIN_Tc3B 1.2062 0.8291 1.1095 1.3112
TNM_CLIN_Tc4 1.9135 0.5226 1.7319 2.1141
TNM_CLIN_Tc4A 1.2002 0.8332 1.0983 1.3116
TNM_CLIN_Tc4B 2.2266 0.4491 2.0542 2.4135
TNM_CLIN_Tc4C NA NA NA NA
TNM_CLIN_Tc4D NA NA NA NA
TNM_CLIN_TcX 0.5458 1.8323 0.5058 0.5889
TNM_CLIN_TpA NA NA NA NA
TNM_CLIN_TpIS 0.4075 2.4539 0.3534 0.4699
Concordance= 0.66 (se = 0.001 )
Rsquare= 0.076 (max possible= 0.994 )
Likelihood ratio test= 20697 on 15 df, p=0
Wald test = 23632 on 15 df, p=0
Score (logrank) test = 30076 on 15 df, p=0
Removed 7 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_CLIN_T
This manual palette can handle a maximum of 10 values. You have supplied 16.



Clinical N Stage
uni_var(test_var = "TNM_CLIN_N", data_imp = data)
_________________________________________________
## TNM_CLIN_N
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_N, data = data)
6157 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_CLIN_N=N_A 1573 678 131.0 115.9 NA
TNM_CLIN_N=c0 180888 28469 NA NA NA
TNM_CLIN_N=c1 4432 2166 45.9 42.0 50.5
TNM_CLIN_N=c1A 1030 376 117.5 107.5 NA
TNM_CLIN_N=c1B 1267 740 26.6 24.1 29.7
TNM_CLIN_N=c2 905 477 37.0 31.9 44.8
TNM_CLIN_N=c2A 342 144 110.2 72.0 NA
TNM_CLIN_N=c2B 658 393 28.9 25.1 33.3
TNM_CLIN_N=c2C 630 330 42.0 36.8 50.1
TNM_CLIN_N=c3 2102 1497 15.5 14.3 16.7
TNM_CLIN_N=cX 69105 21865 NA 164.5 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_N, data = data)
6157 observations deleted due to missingness
TNM_CLIN_N=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1280 212 0.861 0.00884 0.844 0.879
24 1070 171 0.744 0.01130 0.722 0.767
36 935 93 0.678 0.01219 0.655 0.703
48 837 61 0.633 0.01268 0.609 0.659
60 761 30 0.610 0.01291 0.585 0.636
120 298 94 0.520 0.01408 0.494 0.549
TNM_CLIN_N=c0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 153959 5295 0.969 0.000425 0.968 0.969
24 132076 5910 0.929 0.000644 0.928 0.931
36 107180 4986 0.891 0.000813 0.890 0.893
48 85888 3619 0.859 0.000950 0.857 0.860
60 66731 2684 0.829 0.001078 0.827 0.831
120 11055 5473 0.705 0.001982 0.701 0.709
TNM_CLIN_N=c1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3118 990 0.767 0.00649 0.755 0.780
24 2294 521 0.633 0.00758 0.618 0.648
36 1695 290 0.547 0.00806 0.532 0.563
48 1268 159 0.492 0.00836 0.476 0.508
60 927 88 0.453 0.00866 0.437 0.471
120 108 108 0.358 0.01169 0.336 0.382
TNM_CLIN_N=c1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 909 64 0.936 0.00777 0.921 0.951
24 756 96 0.834 0.01202 0.811 0.858
36 627 75 0.748 0.01429 0.721 0.777
48 511 57 0.677 0.01574 0.647 0.709
60 407 30 0.633 0.01666 0.601 0.666
120 79 50 0.499 0.02324 0.456 0.547
TNM_CLIN_N=c1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 829 353 0.711 0.0130 0.686 0.737
24 573 204 0.531 0.0146 0.503 0.560
36 414 89 0.443 0.0149 0.415 0.473
48 317 46 0.390 0.0150 0.362 0.420
60 251 12 0.374 0.0151 0.345 0.405
120 48 31 0.300 0.0178 0.267 0.337
TNM_CLIN_N=c2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 656 190 0.783 0.0140 0.756 0.811
24 448 138 0.611 0.0170 0.578 0.645
36 305 72 0.503 0.0181 0.469 0.540
48 229 33 0.444 0.0187 0.409 0.482
60 172 23 0.396 0.0192 0.361 0.436
120 38 20 0.339 0.0204 0.301 0.381
TNM_CLIN_N=c2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 299 26 0.922 0.0146 0.894 0.951
24 244 44 0.784 0.0230 0.740 0.830
36 200 28 0.690 0.0262 0.640 0.743
48 172 11 0.650 0.0272 0.599 0.706
60 142 11 0.607 0.0284 0.554 0.665
120 23 23 0.435 0.0421 0.360 0.526
TNM_CLIN_N=c2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 467 166 0.743 0.0172 0.710 0.778
24 314 113 0.555 0.0200 0.518 0.596
36 228 57 0.450 0.0205 0.412 0.493
48 176 28 0.392 0.0206 0.354 0.435
60 133 11 0.365 0.0208 0.326 0.408
120 20 18 0.276 0.0261 0.229 0.332
TNM_CLIN_N=c2C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 480 109 0.821 0.0156 0.791 0.852
24 345 90 0.660 0.0198 0.622 0.699
36 244 54 0.549 0.0215 0.509 0.593
48 164 34 0.465 0.0226 0.423 0.511
60 112 19 0.402 0.0237 0.359 0.452
120 16 24 0.290 0.0272 0.241 0.348
TNM_CLIN_N=c3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1128 886 0.569 0.0110 0.547 0.590
24 673 353 0.382 0.0110 0.361 0.404
36 439 138 0.298 0.0107 0.277 0.319
48 305 61 0.253 0.0105 0.233 0.274
60 218 25 0.230 0.0105 0.210 0.251
120 24 32 0.164 0.0143 0.138 0.195
TNM_CLIN_N=cX
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 57081 6588 0.901 0.00116 0.899 0.903
24 51040 3678 0.842 0.00144 0.839 0.844
36 45763 2833 0.794 0.00161 0.790 0.797
48 41332 2001 0.758 0.00173 0.755 0.761
60 37139 1580 0.728 0.00182 0.725 0.732
120 14768 4430 0.618 0.00220 0.614 0.622
## Univariable Cox Proportional Hazard Model for: TNM_CLIN_N
X matrix deemed to be singular; variable 10 11 12
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_N, data = data)
n= 262932, number of events= 57135
(6157 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_CLIN_Nc0 -0.85751 0.42422 0.03888 -22.053 <2e-16 ***
TNM_CLIN_Nc1 0.60835 1.83740 0.04406 13.808 <2e-16 ***
TNM_CLIN_Nc1A -0.06398 0.93802 0.06431 -0.995 0.320
TNM_CLIN_Nc1B 0.83896 2.31396 0.05319 15.771 <2e-16 ***
TNM_CLIN_Nc2 0.69373 2.00117 0.05980 11.602 <2e-16 ***
TNM_CLIN_Nc2A 0.09198 1.09635 0.09177 1.002 0.316
TNM_CLIN_Nc2B 0.82634 2.28494 0.06343 13.028 <2e-16 ***
TNM_CLIN_Nc2C 0.65866 1.93220 0.06716 9.807 <2e-16 ***
TNM_CLIN_Nc3 1.34482 3.83750 0.04638 28.996 <2e-16 ***
TNM_CLIN_Nc3A NA NA 0.00000 NA NA
TNM_CLIN_Nc3B NA NA 0.00000 NA NA
TNM_CLIN_Nc3C NA NA 0.00000 NA NA
TNM_CLIN_NcX -0.37336 0.68842 0.03900 -9.574 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_CLIN_Nc0 0.4242 2.3573 0.3931 0.4578
TNM_CLIN_Nc1 1.8374 0.5442 1.6854 2.0031
TNM_CLIN_Nc1A 0.9380 1.0661 0.8269 1.0640
TNM_CLIN_Nc1B 2.3140 0.4322 2.0849 2.5682
TNM_CLIN_Nc2 2.0012 0.4997 1.7799 2.2500
TNM_CLIN_Nc2A 1.0963 0.9121 0.9159 1.3124
TNM_CLIN_Nc2B 2.2849 0.4376 2.0178 2.5874
TNM_CLIN_Nc2C 1.9322 0.5175 1.6939 2.2040
TNM_CLIN_Nc3 3.8375 0.2606 3.5040 4.2027
TNM_CLIN_Nc3A NA NA NA NA
TNM_CLIN_Nc3B NA NA NA NA
TNM_CLIN_Nc3C NA NA NA NA
TNM_CLIN_NcX 0.6884 1.4526 0.6378 0.7431
Concordance= 0.612 (se = 0.001 )
Rsquare= 0.042 (max possible= 0.994 )
Likelihood ratio test= 11286 on 10 df, p=0
Wald test = 15102 on 10 df, p=0
Score (logrank) test = 18657 on 10 df, p=0
Removed 4 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_CLIN_N
This manual palette can handle a maximum of 10 values. You have supplied 11.



Clinical Stage Group
uni_var(test_var = "TNM_CLIN_STAGE_GROUP", data_imp = data)
_________________________________________________
## TNM_CLIN_STAGE_GROUP
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_STAGE_GROUP, data = data)
30 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_CLIN_STAGE_GROUP=0 2401 385 NA 157.90 NA
TNM_CLIN_STAGE_GROUP=1 8331 1036 NA NA NA
TNM_CLIN_STAGE_GROUP=1A 68926 5518 NA NA NA
TNM_CLIN_STAGE_GROUP=1B 47613 5724 NA NA NA
TNM_CLIN_STAGE_GROUP=2 1514 423 NA 133.19 NA
TNM_CLIN_STAGE_GROUP=2A 16357 3911 145.54 135.33 NA
TNM_CLIN_STAGE_GROUP=2B 11360 4047 86.83 83.58 89.43
TNM_CLIN_STAGE_GROUP=2C 5992 3110 43.89 42.05 45.93
TNM_CLIN_STAGE_GROUP=3 8770 3832 67.55 62.78 72.64
TNM_CLIN_STAGE_GROUP=4 10283 8662 6.05 5.82 6.24
TNM_CLIN_STAGE_GROUP=4A 2 1 21.09 21.09 NA
TNM_CLIN_STAGE_GROUP=4C 1 1 3.88 NA NA
TNM_CLIN_STAGE_GROUP=N_A 1583 684 131.02 113.08 NA
TNM_CLIN_STAGE_GROUP=99 85926 21015 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_STAGE_GROUP, data = data)
30 observations deleted due to missingness
TNM_CLIN_STAGE_GROUP=0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2059 70 0.969 0.00365 0.962 0.976
24 1757 68 0.935 0.00536 0.925 0.946
36 1429 61 0.900 0.00680 0.887 0.913
48 1148 47 0.867 0.00804 0.852 0.883
60 906 38 0.836 0.00925 0.818 0.854
120 186 92 0.695 0.01679 0.662 0.728
TNM_CLIN_STAGE_GROUP=1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7306 127 0.984 0.00143 0.981 0.987
24 6641 159 0.962 0.00223 0.957 0.966
36 5805 171 0.936 0.00293 0.930 0.941
48 4959 123 0.914 0.00343 0.908 0.921
60 4056 128 0.889 0.00402 0.881 0.897
120 826 297 0.775 0.00770 0.760 0.790
TNM_CLIN_STAGE_GROUP=1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 59184 610 0.990 0.000388 0.990 0.991
24 52508 783 0.977 0.000621 0.975 0.978
36 44403 821 0.960 0.000835 0.959 0.962
48 36830 770 0.942 0.001044 0.940 0.944
60 29704 611 0.925 0.001237 0.922 0.927
120 5894 1709 0.829 0.002692 0.823 0.834
TNM_CLIN_STAGE_GROUP=1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 40993 634 0.986 0.000569 0.984 0.987
24 35300 1050 0.959 0.000987 0.957 0.961
36 28360 994 0.929 0.001331 0.927 0.932
48 22533 832 0.899 0.001648 0.896 0.902
60 17258 658 0.870 0.001957 0.866 0.873
120 2568 1426 0.732 0.004215 0.723 0.740
TNM_CLIN_STAGE_GROUP=2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1310 70 0.951 0.00570 0.940 0.962
24 1134 99 0.877 0.00889 0.860 0.894
36 968 80 0.813 0.01075 0.792 0.834
48 797 58 0.761 0.01205 0.737 0.785
60 661 40 0.720 0.01302 0.695 0.746
120 70 73 0.577 0.02045 0.538 0.618
TNM_CLIN_STAGE_GROUP=2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 14195 472 0.969 0.00140 0.966 0.972
24 11965 849 0.908 0.00241 0.904 0.913
36 9355 817 0.841 0.00319 0.834 0.847
48 7220 583 0.783 0.00376 0.776 0.791
60 5425 424 0.733 0.00425 0.724 0.741
120 770 707 0.560 0.00742 0.546 0.575
TNM_CLIN_STAGE_GROUP=2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 9757 598 0.944 0.00222 0.940 0.949
24 7764 1079 0.835 0.00370 0.827 0.842
36 5771 893 0.731 0.00459 0.722 0.740
48 4322 517 0.660 0.00511 0.650 0.670
60 3127 351 0.600 0.00555 0.590 0.611
120 422 566 0.411 0.00850 0.395 0.428
TNM_CLIN_STAGE_GROUP=2C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4868 731 0.873 0.00440 0.864 0.882
24 3484 954 0.694 0.00625 0.682 0.706
36 2413 612 0.563 0.00697 0.549 0.577
48 1661 358 0.471 0.00734 0.457 0.486
60 1151 181 0.414 0.00759 0.400 0.429
120 119 266 0.251 0.01044 0.232 0.273
TNM_CLIN_STAGE_GROUP=3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7138 1066 0.874 0.00362 0.866 0.881
24 5419 1135 0.729 0.00496 0.719 0.738
36 4059 689 0.630 0.00554 0.619 0.641
48 3116 395 0.564 0.00587 0.553 0.576
60 2356 217 0.521 0.00612 0.509 0.533
120 390 309 0.407 0.00808 0.392 0.423
TNM_CLIN_STAGE_GROUP=4
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3011 6768 0.3206 0.00471 0.3115 0.330
24 1542 1204 0.1871 0.00404 0.1794 0.195
36 900 391 0.1350 0.00368 0.1280 0.142
48 598 142 0.1117 0.00353 0.1049 0.119
60 414 57 0.0996 0.00350 0.0929 0.107
120 61 91 0.0669 0.00392 0.0596 0.075
TNM_CLIN_STAGE_GROUP=4A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2 0 1.0 0.000 1.000 1
24 1 1 0.5 0.354 0.125 1
TNM_CLIN_STAGE_GROUP=4C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
TNM_CLIN_STAGE_GROUP=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1286 216 0.860 0.00886 0.843 0.877
24 1074 173 0.742 0.01130 0.720 0.764
36 938 93 0.677 0.01217 0.653 0.701
48 840 61 0.632 0.01265 0.607 0.657
60 763 30 0.608 0.01287 0.584 0.634
120 298 94 0.519 0.01404 0.492 0.547
TNM_CLIN_STAGE_GROUP=99
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 73949 4010 0.951 0.000759 0.949 0.952
24 65067 4095 0.896 0.001093 0.894 0.898
36 56386 3248 0.849 0.001309 0.847 0.852
48 49194 2357 0.812 0.001459 0.809 0.815
60 42422 1837 0.780 0.001581 0.777 0.783
120 14873 4715 0.662 0.002125 0.658 0.667
## Univariable Cox Proportional Hazard Model for: TNM_CLIN_STAGE_GROUP
X matrix deemed to be singular; variable 4 10 11 12 15
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_CLIN_STAGE_GROUP, data = data)
n= 269059, number of events= 58349
(30 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_CLIN_STAGE_GROUP1 -0.39204 0.67568 0.05969 -6.568 5.10e-11 ***
TNM_CLIN_STAGE_GROUP1A -0.76156 0.46694 0.05271 -14.447 < 2e-16 ***
TNM_CLIN_STAGE_GROUP1B -0.25897 0.77185 0.05265 -4.918 8.72e-07 ***
TNM_CLIN_STAGE_GROUP1C NA NA 0.00000 NA NA
TNM_CLIN_STAGE_GROUP2 0.51512 1.67384 0.07044 7.313 2.61e-13 ***
TNM_CLIN_STAGE_GROUP2A 0.46412 1.59061 0.05342 8.689 < 2e-16 ***
TNM_CLIN_STAGE_GROUP2B 0.94890 2.58286 0.05334 17.790 < 2e-16 ***
TNM_CLIN_STAGE_GROUP2C 1.49831 4.47413 0.05404 27.725 < 2e-16 ***
TNM_CLIN_STAGE_GROUP3 1.19754 3.31196 0.05347 22.398 < 2e-16 ***
TNM_CLIN_STAGE_GROUP3A NA NA 0.00000 NA NA
TNM_CLIN_STAGE_GROUP3B NA NA 0.00000 NA NA
TNM_CLIN_STAGE_GROUP3C NA NA 0.00000 NA NA
TNM_CLIN_STAGE_GROUP4 3.02004 20.49201 0.05218 57.876 < 2e-16 ***
TNM_CLIN_STAGE_GROUP4A 1.67416 5.33429 1.00131 1.672 0.0945 .
TNM_CLIN_STAGE_GROUP4B NA NA 0.00000 NA NA
TNM_CLIN_STAGE_GROUP4C 4.37109 79.13019 1.00132 4.365 1.27e-05 ***
TNM_CLIN_STAGE_GROUPN_A 0.83836 2.31257 0.06373 13.155 < 2e-16 ***
TNM_CLIN_STAGE_GROUP99 0.24306 1.27514 0.05144 4.725 2.30e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_CLIN_STAGE_GROUP1 0.6757 1.48000 0.6011 0.7595
TNM_CLIN_STAGE_GROUP1A 0.4669 2.14162 0.4211 0.5178
TNM_CLIN_STAGE_GROUP1B 0.7718 1.29559 0.6962 0.8558
TNM_CLIN_STAGE_GROUP1C NA NA NA NA
TNM_CLIN_STAGE_GROUP2 1.6738 0.59743 1.4580 1.9216
TNM_CLIN_STAGE_GROUP2A 1.5906 0.62869 1.4325 1.7662
TNM_CLIN_STAGE_GROUP2B 2.5829 0.38717 2.3265 2.8675
TNM_CLIN_STAGE_GROUP2C 4.4741 0.22351 4.0245 4.9740
TNM_CLIN_STAGE_GROUP3 3.3120 0.30194 2.9825 3.6779
TNM_CLIN_STAGE_GROUP3A NA NA NA NA
TNM_CLIN_STAGE_GROUP3B NA NA NA NA
TNM_CLIN_STAGE_GROUP3C NA NA NA NA
TNM_CLIN_STAGE_GROUP4 20.4920 0.04880 18.4998 22.6987
TNM_CLIN_STAGE_GROUP4A 5.3343 0.18747 0.7495 37.9655
TNM_CLIN_STAGE_GROUP4B NA NA NA NA
TNM_CLIN_STAGE_GROUP4C 79.1302 0.01264 11.1179 563.2010
TNM_CLIN_STAGE_GROUPN_A 2.3126 0.43242 2.0410 2.6202
TNM_CLIN_STAGE_GROUP99 1.2751 0.78423 1.1528 1.4104
Concordance= 0.733 (se = 0.001 )
Rsquare= 0.167 (max possible= 0.994 )
Likelihood ratio test= 49026 on 13 df, p=0
Wald test = 67820 on 13 df, p=0
Score (logrank) test = 124787 on 13 df, p=0
Removed 6 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_CLIN_STAGE_GROUP
This manual palette can handle a maximum of 10 values. You have supplied 14.



Pathologic T Stage
uni_var(test_var = "TNM_PATH_T", data_imp = data)
_________________________________________________
## TNM_PATH_T
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_T, data = data)
11122 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_PATH_T=N_A 1571 676 132.6 115.9 NA
TNM_PATH_T=p0 3652 695 NA 151.8 NA
TNM_PATH_T=p1 8932 1030 NA NA NA
TNM_PATH_T=p1A 43424 2223 NA 95.5 NA
TNM_PATH_T=p1B 17703 1125 97.1 NA NA
TNM_PATH_T=p2 2844 583 NA NA NA
TNM_PATH_T=p2A 30821 4110 NA NA NA
TNM_PATH_T=p2B 6903 1546 148.2 144.0 NA
TNM_PATH_T=p3 1857 660 113.3 98.9 131.8
TNM_PATH_T=p3A 12774 3101 146.9 137.2 NA
TNM_PATH_T=p3B 9644 3474 85.3 81.4 89.2
TNM_PATH_T=p4 1215 612 51.8 46.3 58.6
TNM_PATH_T=p4A 6629 2464 80.7 74.5 86.5
TNM_PATH_T=p4B 11783 6564 35.9 34.9 37.4
TNM_PATH_T=pIS 936 133 NA 151.2 NA
TNM_PATH_T=pX 97279 25883 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_T, data = data)
11122 observations deleted due to missingness
TNM_PATH_T=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1280 210 0.863 0.00882 0.845 0.880
24 1070 171 0.745 0.01130 0.723 0.768
36 935 93 0.679 0.01219 0.656 0.704
48 837 61 0.634 0.01268 0.610 0.659
60 761 30 0.611 0.01291 0.586 0.637
120 298 94 0.521 0.01409 0.494 0.549
TNM_PATH_T=p0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2852 333 0.904 0.00503 0.894 0.913
24 2202 145 0.854 0.00622 0.842 0.866
36 1611 84 0.817 0.00714 0.803 0.831
48 1179 45 0.792 0.00788 0.776 0.807
60 796 33 0.765 0.00885 0.748 0.783
120 93 50 0.654 0.01954 0.617 0.693
TNM_PATH_T=p1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7787 149 0.982 0.00145 0.979 0.985
24 7087 161 0.961 0.00217 0.957 0.965
36 6260 143 0.941 0.00272 0.935 0.946
48 5320 131 0.920 0.00322 0.913 0.926
60 4352 127 0.896 0.00378 0.888 0.903
120 974 280 0.793 0.00715 0.779 0.807
TNM_PATH_T=p1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 36103 426 0.989 0.000524 0.988 0.990
24 30011 468 0.975 0.000822 0.974 0.977
36 22342 442 0.959 0.001122 0.957 0.961
48 15518 386 0.939 0.001484 0.936 0.942
60 9564 257 0.920 0.001891 0.916 0.923
TNM_PATH_T=p1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 14777 198 0.988 0.000869 0.986 0.989
24 12032 279 0.967 0.001475 0.965 0.970
36 8520 258 0.943 0.002074 0.939 0.947
48 5695 183 0.919 0.002693 0.914 0.924
60 3327 100 0.898 0.003339 0.892 0.905
TNM_PATH_T=p2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2485 72 0.973 0.00314 0.967 0.979
24 2214 107 0.930 0.00509 0.920 0.940
36 1971 87 0.892 0.00629 0.879 0.904
48 1689 78 0.855 0.00730 0.840 0.869
60 1429 71 0.816 0.00827 0.800 0.833
120 309 156 0.670 0.01347 0.644 0.697
TNM_PATH_T=p2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 26767 453 0.984 0.000738 0.983 0.986
24 23028 748 0.955 0.001273 0.953 0.957
36 18498 725 0.922 0.001720 0.919 0.925
48 14682 600 0.889 0.002118 0.885 0.893
60 11220 468 0.858 0.002503 0.853 0.862
120 2202 997 0.721 0.004842 0.712 0.731
TNM_PATH_T=p2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5902 239 0.963 0.00236 0.958 0.967
24 4941 323 0.907 0.00374 0.900 0.915
36 3835 313 0.844 0.00490 0.835 0.854
48 2920 231 0.788 0.00580 0.777 0.800
60 2160 143 0.745 0.00652 0.732 0.758
120 389 267 0.579 0.01120 0.558 0.602
TNM_PATH_T=p3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1600 105 0.941 0.00561 0.930 0.952
24 1369 141 0.856 0.00854 0.839 0.872
36 1103 140 0.764 0.01056 0.744 0.785
48 918 77 0.708 0.01157 0.686 0.731
60 714 80 0.642 0.01266 0.617 0.667
120 130 108 0.482 0.01782 0.449 0.519
TNM_PATH_T=p3A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 11076 390 0.967 0.00162 0.964 0.971
24 9297 679 0.905 0.00277 0.900 0.911
36 7158 656 0.835 0.00367 0.828 0.842
48 5502 442 0.778 0.00430 0.770 0.787
60 4064 336 0.725 0.00489 0.716 0.735
120 795 548 0.555 0.00802 0.539 0.571
TNM_PATH_T=p3B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 8268 553 0.940 0.00249 0.935 0.945
24 6499 953 0.826 0.00410 0.818 0.834
36 4695 811 0.714 0.00510 0.704 0.724
48 3423 414 0.644 0.00564 0.633 0.655
60 2388 286 0.584 0.00615 0.572 0.596
120 404 424 0.406 0.00916 0.388 0.424
TNM_PATH_T=p4
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 951 193 0.836 0.0108 0.815 0.857
24 725 153 0.696 0.0137 0.670 0.724
36 575 90 0.606 0.0149 0.578 0.636
48 439 78 0.520 0.0156 0.490 0.551
60 335 45 0.462 0.0161 0.432 0.495
120 61 48 0.345 0.0204 0.307 0.388
TNM_PATH_T=p4A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5585 489 0.922 0.00337 0.916 0.929
24 4289 710 0.799 0.00522 0.789 0.809
36 3172 488 0.700 0.00620 0.688 0.712
48 2352 297 0.629 0.00683 0.615 0.642
60 1681 185 0.573 0.00736 0.559 0.588
120 298 283 0.415 0.01039 0.395 0.436
TNM_PATH_T=p4B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 9011 2032 0.821 0.00361 0.814 0.828
24 6154 2019 0.628 0.00467 0.619 0.637
36 4057 1157 0.500 0.00502 0.490 0.510
48 2742 589 0.419 0.00520 0.409 0.430
60 1834 319 0.364 0.00537 0.354 0.375
120 222 429 0.220 0.00715 0.206 0.234
TNM_PATH_T=pIS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 800 15 0.983 0.00445 0.974 0.991
24 692 20 0.957 0.00718 0.943 0.971
36 545 24 0.919 0.01019 0.900 0.940
48 433 20 0.883 0.01267 0.858 0.908
60 322 11 0.857 0.01452 0.829 0.886
120 67 42 0.660 0.03142 0.601 0.724
TNM_PATH_T=pX
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 82196 7397 0.921 0.000882 0.919 0.923
24 75740 3959 0.876 0.001092 0.874 0.878
36 70490 3062 0.840 0.001226 0.838 0.842
48 65737 2409 0.811 0.001320 0.808 0.813
60 60722 1950 0.786 0.001392 0.783 0.789
120 20235 6160 0.681 0.001783 0.677 0.684
## Univariable Cox Proportional Hazard Model for: TNM_PATH_T
X matrix deemed to be singular; variable 5 6 16 17 18
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_T, data = data)
n= 257967, number of events= 54879
(11122 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_PATH_Tp0 -0.40264 0.66855 0.05407 -7.447 9.55e-14 ***
TNM_PATH_Tp1 -1.30100 0.27226 0.04951 -26.277 < 2e-16 ***
TNM_PATH_Tp1A -1.74878 0.17399 0.04401 -39.733 < 2e-16 ***
TNM_PATH_Tp1B -1.49499 0.22425 0.04875 -30.664 < 2e-16 ***
TNM_PATH_Tp1C NA NA 0.00000 NA NA
TNM_PATH_Tp1MI NA NA 0.00000 NA NA
TNM_PATH_Tp2 -0.73383 0.48007 0.05653 -12.981 < 2e-16 ***
TNM_PATH_Tp2A -1.02393 0.35918 0.04153 -24.655 < 2e-16 ***
TNM_PATH_Tp2B -0.43444 0.64763 0.04614 -9.415 < 2e-16 ***
TNM_PATH_Tp3 -0.05096 0.95031 0.05474 -0.931 0.351861
TNM_PATH_Tp3A -0.37181 0.68948 0.04248 -8.753 < 2e-16 ***
TNM_PATH_Tp3B 0.12594 1.13422 0.04209 2.992 0.002768 **
TNM_PATH_Tp4 0.48632 1.62632 0.05582 8.712 < 2e-16 ***
TNM_PATH_Tp4A 0.16855 1.18358 0.04346 3.878 0.000105 ***
TNM_PATH_Tp4B 0.79713 2.21916 0.04048 19.692 < 2e-16 ***
TNM_PATH_Tp4C NA NA 0.00000 NA NA
TNM_PATH_Tp4D NA NA 0.00000 NA NA
TNM_PATH_TpA NA NA 0.00000 NA NA
TNM_PATH_TpIS -0.94105 0.39022 0.09487 -9.919 < 2e-16 ***
TNM_PATH_TpX -0.62129 0.53725 0.03896 -15.946 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_PATH_Tp0 0.6686 1.4958 0.6013 0.7433
TNM_PATH_Tp1 0.2723 3.6730 0.2471 0.3000
TNM_PATH_Tp1A 0.1740 5.7476 0.1596 0.1897
TNM_PATH_Tp1B 0.2243 4.4593 0.2038 0.2467
TNM_PATH_Tp1C NA NA NA NA
TNM_PATH_Tp1MI NA NA NA NA
TNM_PATH_Tp2 0.4801 2.0830 0.4297 0.5363
TNM_PATH_Tp2A 0.3592 2.7841 0.3311 0.3896
TNM_PATH_Tp2B 0.6476 1.5441 0.5916 0.7089
TNM_PATH_Tp3 0.9503 1.0523 0.8536 1.0579
TNM_PATH_Tp3A 0.6895 1.4504 0.6344 0.7493
TNM_PATH_Tp3B 1.1342 0.8817 1.0444 1.2317
TNM_PATH_Tp4 1.6263 0.6149 1.4578 1.8144
TNM_PATH_Tp4A 1.1836 0.8449 1.0869 1.2888
TNM_PATH_Tp4B 2.2192 0.4506 2.0499 2.4024
TNM_PATH_Tp4C NA NA NA NA
TNM_PATH_Tp4D NA NA NA NA
TNM_PATH_TpA NA NA NA NA
TNM_PATH_TpIS 0.3902 2.5627 0.3240 0.4700
TNM_PATH_TpX 0.5373 1.8613 0.4978 0.5799
Concordance= 0.661 (se = 0.001 )
Rsquare= 0.072 (max possible= 0.994 )
Likelihood ratio test= 19392 on 15 df, p=0
Wald test = 20756 on 15 df, p=0
Score (logrank) test = 25563 on 15 df, p=0
Removed 6 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_PATH_T
This manual palette can handle a maximum of 10 values. You have supplied 16.



Pathologic N Stage
uni_var(test_var = "TNM_PATH_N", data_imp = data)
_________________________________________________
## TNM_PATH_N
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_N, data = data)
20664 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_PATH_N=N_A 1569 674 132.6 116.9 NA
TNM_PATH_N=p0 121211 17292 NA NA NA
TNM_PATH_N=p1 3607 1406 94.1 82.4 109.5
TNM_PATH_N=p1A 8421 2173 157.0 144.0 NA
TNM_PATH_N=p1B 1951 895 53.1 44.7 60.0
TNM_PATH_N=p2 1104 537 53.5 47.4 62.4
TNM_PATH_N=p2A 2858 966 98.8 80.4 113.1
TNM_PATH_N=p2B 1480 713 43.1 37.7 51.9
TNM_PATH_N=p2C 1242 555 54.6 49.4 61.6
TNM_PATH_N=p3 3849 2373 25.4 24.3 27.0
TNM_PATH_N=pX 101133 26327 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_N, data = data)
20664 observations deleted due to missingness
TNM_PATH_N=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1280 208 0.864 0.00879 0.847 0.881
24 1070 171 0.746 0.01129 0.724 0.769
36 935 93 0.680 0.01219 0.657 0.705
48 837 61 0.635 0.01269 0.611 0.660
60 761 30 0.612 0.01292 0.587 0.637
120 298 94 0.522 0.01410 0.495 0.550
TNM_PATH_N=p0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 104642 2132 0.981 0.000407 0.980 0.982
24 91086 3233 0.949 0.000678 0.948 0.950
36 74985 3218 0.913 0.000905 0.911 0.915
48 61113 2325 0.882 0.001076 0.880 0.884
60 48126 1834 0.853 0.001240 0.850 0.855
120 10572 4081 0.729 0.002223 0.725 0.734
TNM_PATH_N=p1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2943 395 0.886 0.00542 0.875 0.896
24 2347 348 0.777 0.00726 0.762 0.791
36 1857 250 0.690 0.00827 0.674 0.706
48 1459 165 0.625 0.00891 0.608 0.642
60 1100 105 0.575 0.00945 0.556 0.594
120 195 126 0.462 0.01265 0.438 0.488
TNM_PATH_N=p1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7423 273 0.966 0.00204 0.962 0.970
24 6066 593 0.885 0.00370 0.877 0.892
36 4611 472 0.809 0.00474 0.800 0.819
48 3486 328 0.746 0.00551 0.736 0.757
60 2529 211 0.696 0.00615 0.684 0.708
120 493 273 0.561 0.00956 0.543 0.580
TNM_PATH_N=p1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1516 279 0.850 0.00829 0.834 0.866
24 1086 290 0.680 0.01114 0.658 0.702
36 754 166 0.568 0.01226 0.544 0.592
48 553 66 0.513 0.01281 0.488 0.539
60 395 38 0.473 0.01335 0.448 0.500
120 67 50 0.368 0.01782 0.335 0.405
TNM_PATH_N=p2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 904 134 0.874 0.0102 0.854 0.894
24 677 153 0.720 0.0141 0.693 0.748
36 521 93 0.617 0.0156 0.587 0.648
48 391 72 0.526 0.0166 0.495 0.560
60 301 40 0.469 0.0171 0.436 0.503
120 64 37 0.373 0.0210 0.334 0.417
TNM_PATH_N=p2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2485 130 0.952 0.00411 0.944 0.960
24 1937 307 0.828 0.00751 0.814 0.843
36 1389 221 0.725 0.00926 0.707 0.743
48 1012 133 0.649 0.01038 0.629 0.670
60 722 69 0.600 0.01118 0.578 0.622
120 131 103 0.451 0.01690 0.419 0.485
TNM_PATH_N=p2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1151 226 0.841 0.00969 0.823 0.861
24 798 233 0.662 0.01293 0.637 0.688
36 537 136 0.540 0.01422 0.512 0.568
48 378 55 0.478 0.01482 0.450 0.508
60 264 25 0.442 0.01539 0.413 0.473
120 51 34 0.349 0.01964 0.313 0.390
TNM_PATH_N=p2C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 995 145 0.878 0.00949 0.860 0.897
24 708 175 0.715 0.01359 0.688 0.742
36 501 87 0.617 0.01526 0.588 0.648
48 349 61 0.535 0.01649 0.503 0.568
60 244 40 0.467 0.01756 0.434 0.503
120 45 45 0.328 0.02297 0.286 0.376
TNM_PATH_N=p3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2717 984 0.739 0.00717 0.725 0.753
24 1693 770 0.519 0.00835 0.503 0.536
36 1103 327 0.410 0.00851 0.394 0.427
48 735 149 0.348 0.00863 0.332 0.365
60 510 68 0.312 0.00878 0.295 0.330
120 80 68 0.242 0.01072 0.222 0.264
TNM_PATH_N=pX
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 83586 8073 0.916 0.000891 0.915 0.918
24 73950 4492 0.866 0.001119 0.863 0.868
36 64734 3334 0.825 0.001269 0.822 0.827
48 56651 2514 0.791 0.001383 0.789 0.794
60 49360 1906 0.763 0.001475 0.761 0.766
120 14481 5267 0.649 0.001993 0.645 0.653
## Univariable Cox Proportional Hazard Model for: TNM_PATH_N
X matrix deemed to be singular; variable 2 3 4 5 9 10 16 17 18
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_N, data = data)
n= 248425, number of events= 53911
(20664 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_PATH_Np0 -0.98982 0.37164 0.03928 -25.198 < 2e-16 ***
TNM_PATH_Np0I- NA NA 0.00000 NA NA
TNM_PATH_Np0I+ NA NA 0.00000 NA NA
TNM_PATH_Np0M- NA NA 0.00000 NA NA
TNM_PATH_Np0M+ NA NA 0.00000 NA NA
TNM_PATH_Np1 0.17018 1.18552 0.04688 3.630 0.000283 ***
TNM_PATH_Np1A -0.28891 0.74908 0.04412 -6.548 5.84e-11 ***
TNM_PATH_Np1B 0.52071 1.68322 0.05105 10.200 < 2e-16 ***
TNM_PATH_Np1C NA NA 0.00000 NA NA
TNM_PATH_Np1MI NA NA 0.00000 NA NA
TNM_PATH_Np2 0.43648 1.54725 0.05787 7.542 4.62e-14 ***
TNM_PATH_Np2A 0.05822 1.05995 0.05023 1.159 0.246383
TNM_PATH_Np2B 0.59816 1.81878 0.05377 11.124 < 2e-16 ***
TNM_PATH_Np2C 0.47071 1.60112 0.05736 8.206 2.22e-16 ***
TNM_PATH_Np3 1.00503 2.73199 0.04373 22.981 < 2e-16 ***
TNM_PATH_Np3A NA NA 0.00000 NA NA
TNM_PATH_Np3B NA NA 0.00000 NA NA
TNM_PATH_Np3C NA NA 0.00000 NA NA
TNM_PATH_NpX -0.48807 0.61381 0.03901 -12.511 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_PATH_Np0 0.3716 2.6908 0.3441 0.4014
TNM_PATH_Np0I- NA NA NA NA
TNM_PATH_Np0I+ NA NA NA NA
TNM_PATH_Np0M- NA NA NA NA
TNM_PATH_Np0M+ NA NA NA NA
TNM_PATH_Np1 1.1855 0.8435 1.0815 1.2996
TNM_PATH_Np1A 0.7491 1.3350 0.6870 0.8167
TNM_PATH_Np1B 1.6832 0.5941 1.5230 1.8603
TNM_PATH_Np1C NA NA NA NA
TNM_PATH_Np1MI NA NA NA NA
TNM_PATH_Np2 1.5472 0.6463 1.3813 1.7331
TNM_PATH_Np2A 1.0600 0.9434 0.9606 1.1696
TNM_PATH_Np2B 1.8188 0.5498 1.6368 2.0209
TNM_PATH_Np2C 1.6011 0.6246 1.4309 1.7916
TNM_PATH_Np3 2.7320 0.3660 2.5076 2.9765
TNM_PATH_Np3A NA NA NA NA
TNM_PATH_Np3B NA NA NA NA
TNM_PATH_Np3C NA NA NA NA
TNM_PATH_NpX 0.6138 1.6292 0.5686 0.6626
Concordance= 0.623 (se = 0.001 )
Rsquare= 0.043 (max possible= 0.994 )
Likelihood ratio test= 10899 on 10 df, p=0
Wald test = 13404 on 10 df, p=0
Score (logrank) test = 15807 on 10 df, p=0
Removed 10 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_PATH_N
This manual palette can handle a maximum of 10 values. You have supplied 11.



Pathologic M Stage
uni_var(test_var = "TNM_PATH_M", data_imp = data)
_________________________________________________
## TNM_PATH_M
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_M, data = data)
146631 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_PATH_M=N_A 1552 660 132.80 119.59 NA
TNM_PATH_M=p1 1529 1329 7.13 6.67 7.85
TNM_PATH_M=p1A 828 512 22.74 19.58 26.41
TNM_PATH_M=p1B 626 501 10.15 8.54 12.32
TNM_PATH_M=p1C 1687 1440 5.75 5.42 6.21
TNM_PATH_M=pX 116236 31810 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_M, data = data)
146631 observations deleted due to missingness
TNM_PATH_M=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1268 203 0.865 0.00879 0.848 0.883
24 1065 164 0.751 0.01128 0.730 0.774
36 935 91 0.686 0.01219 0.663 0.711
48 838 60 0.641 0.01271 0.617 0.667
60 761 31 0.617 0.01296 0.592 0.643
120 298 94 0.526 0.01417 0.499 0.555
TNM_PATH_M=p1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 483 996 0.3333 0.01225 0.3102 0.358
24 270 197 0.1949 0.01041 0.1755 0.216
36 188 70 0.1430 0.00931 0.1258 0.162
48 149 23 0.1246 0.00887 0.1084 0.143
60 127 12 0.1142 0.00862 0.0985 0.132
120 32 26 0.0864 0.00818 0.0718 0.104
TNM_PATH_M=p1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 504 264 0.668 0.0168 0.636 0.701
24 325 129 0.489 0.0183 0.454 0.526
36 219 67 0.380 0.0185 0.345 0.417
48 169 20 0.342 0.0184 0.308 0.380
60 137 6 0.329 0.0185 0.295 0.367
120 29 24 0.241 0.0214 0.202 0.287
TNM_PATH_M=p1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 274 324 0.4692 0.0203 0.4310 0.511
24 145 105 0.2826 0.0187 0.2482 0.322
36 76 42 0.1923 0.0172 0.1614 0.229
48 48 15 0.1509 0.0165 0.1217 0.187
60 29 8 0.1215 0.0163 0.0934 0.158
120 4 5 0.0926 0.0168 0.0648 0.132
TNM_PATH_M=p1C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 444 1171 0.2870 0.01127 0.2657 0.3099
24 201 187 0.1580 0.00941 0.1406 0.1776
36 100 51 0.1115 0.00865 0.0958 0.1298
48 61 16 0.0918 0.00842 0.0767 0.1099
60 36 9 0.0764 0.00845 0.0615 0.0949
120 3 6 0.0547 0.00989 0.0384 0.0780
TNM_PATH_M=pX
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 102381 5619 0.950 0.000653 0.949 0.951
24 94717 5267 0.900 0.000909 0.898 0.902
36 88366 4458 0.857 0.001068 0.855 0.859
48 82765 3503 0.823 0.001173 0.821 0.825
60 76890 2885 0.794 0.001251 0.791 0.796
120 26111 8807 0.677 0.001613 0.673 0.680
## Univariable Cox Proportional Hazard Model for: TNM_PATH_M
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_M, data = data)
n= 122458, number of events= 36252
(146631 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_PATH_Mp1 1.90037 6.68839 0.04777 39.78 <2e-16 ***
TNM_PATH_Mp1A 1.03284 2.80903 0.05895 17.52 <2e-16 ***
TNM_PATH_Mp1B 1.79045 5.99215 0.05943 30.13 <2e-16 ***
TNM_PATH_Mp1C 2.23370 9.33430 0.04739 47.14 <2e-16 ***
TNM_PATH_MpX -0.61727 0.53942 0.03933 -15.69 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_PATH_Mp1 6.6884 0.1495 6.0906 7.3449
TNM_PATH_Mp1A 2.8090 0.3560 2.5025 3.1531
TNM_PATH_Mp1B 5.9921 0.1669 5.3333 6.7324
TNM_PATH_Mp1C 9.3343 0.1071 8.5064 10.2428
TNM_PATH_MpX 0.5394 1.8539 0.4994 0.5826
Concordance= 0.564 (se = 0 )
Rsquare= 0.09 (max possible= 0.999 )
Likelihood ratio test= 11597 on 5 df, p=0
Wald test = 20173 on 5 df, p=0
Score (logrank) test = 34277 on 5 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_PATH_M



Pathologic Stage Group
uni_var(test_var = "TNM_PATH_STAGE_GROUP", data_imp = data)
_________________________________________________
## TNM_PATH_STAGE_GROUP
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_STAGE_GROUP, data = data)
8113 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
TNM_PATH_STAGE_GROUP=0 1898 267 NA NA NA
TNM_PATH_STAGE_GROUP=1 6027 735 NA NA NA
TNM_PATH_STAGE_GROUP=1A 63103 5381 NA NA NA
TNM_PATH_STAGE_GROUP=1B 53543 6282 NA NA NA
TNM_PATH_STAGE_GROUP=2 1254 357 NA 150.54 NA
TNM_PATH_STAGE_GROUP=2A 17789 4009 156.65 153.86 NA
TNM_PATH_STAGE_GROUP=2B 12097 4059 103.36 97.81 108.52
TNM_PATH_STAGE_GROUP=2C 6201 3093 49.94 47.90 52.80
TNM_PATH_STAGE_GROUP=3 5432 2327 91.99 83.91 102.08
TNM_PATH_STAGE_GROUP=3A 8067 1985 NA NA NA
TNM_PATH_STAGE_GROUP=3B 7374 2964 72.77 67.61 78.82
TNM_PATH_STAGE_GROUP=3C 5149 2928 31.87 30.49 33.54
TNM_PATH_STAGE_GROUP=4 5747 4687 8.08 7.75 8.54
TNM_PATH_STAGE_GROUP=4A 7 4 21.09 16.92 NA
TNM_PATH_STAGE_GROUP=4C 1 1 3.88 NA NA
TNM_PATH_STAGE_GROUP=N_A 1576 678 132.63 115.88 NA
TNM_PATH_STAGE_GROUP=99 65711 16558 NA 164.47 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_STAGE_GROUP, data = data)
8113 observations deleted due to missingness
TNM_PATH_STAGE_GROUP=0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1624 37 0.979 0.00340 0.972 0.986
24 1387 43 0.952 0.00529 0.941 0.962
36 1094 45 0.917 0.00722 0.903 0.931
48 896 28 0.892 0.00843 0.875 0.908
60 692 26 0.863 0.00990 0.844 0.882
120 169 82 0.695 0.01970 0.658 0.735
TNM_PATH_STAGE_GROUP=1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5319 82 0.986 0.00159 0.982 0.989
24 4896 90 0.968 0.00238 0.964 0.973
36 4341 112 0.945 0.00318 0.939 0.951
48 3785 86 0.925 0.00376 0.918 0.933
60 3154 93 0.901 0.00445 0.892 0.909
120 933 236 0.795 0.00786 0.780 0.811
TNM_PATH_STAGE_GROUP=1A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 54533 531 0.991 0.000393 0.990 0.992
24 48988 668 0.978 0.000624 0.977 0.979
36 42352 717 0.963 0.000836 0.961 0.965
48 36073 698 0.946 0.001041 0.944 0.948
60 30049 590 0.929 0.001231 0.927 0.932
120 7927 1864 0.834 0.002492 0.830 0.839
TNM_PATH_STAGE_GROUP=1B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 46550 551 0.989 0.000470 0.988 0.990
24 40904 914 0.968 0.000814 0.967 0.970
36 33979 1023 0.942 0.001132 0.940 0.944
48 27960 880 0.916 0.001411 0.913 0.918
60 22421 753 0.889 0.001680 0.885 0.892
120 5205 1908 0.764 0.003200 0.758 0.771
TNM_PATH_STAGE_GROUP=2
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1106 39 0.967 0.00518 0.957 0.977
24 982 71 0.903 0.00878 0.886 0.921
36 861 65 0.842 0.01100 0.821 0.864
48 760 44 0.797 0.01231 0.773 0.822
60 642 46 0.746 0.01362 0.720 0.774
120 149 86 0.599 0.01886 0.563 0.637
TNM_PATH_STAGE_GROUP=2A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 15546 384 0.977 0.00117 0.975 0.979
24 13467 712 0.930 0.00204 0.926 0.934
36 10896 784 0.872 0.00279 0.866 0.877
48 8765 595 0.820 0.00333 0.814 0.827
60 6919 468 0.773 0.00379 0.765 0.780
120 1484 960 0.601 0.00611 0.589 0.613
TNM_PATH_STAGE_GROUP=2B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 10557 492 0.957 0.00189 0.953 0.961
24 8692 946 0.867 0.00327 0.861 0.874
36 6655 910 0.770 0.00421 0.761 0.778
48 5174 553 0.701 0.00475 0.692 0.710
60 3918 377 0.645 0.00518 0.635 0.655
120 788 722 0.460 0.00737 0.446 0.475
TNM_PATH_STAGE_GROUP=2C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 5191 578 0.903 0.00385 0.895 0.910
24 3817 922 0.735 0.00590 0.723 0.746
36 2725 616 0.608 0.00675 0.595 0.621
48 1925 389 0.513 0.00722 0.499 0.527
60 1397 214 0.450 0.00751 0.436 0.465
120 207 355 0.274 0.00946 0.256 0.293
TNM_PATH_STAGE_GROUP=3
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4633 445 0.915 0.00387 0.907 0.922
24 3691 686 0.775 0.00590 0.764 0.787
36 2988 426 0.682 0.00670 0.669 0.696
48 2452 275 0.617 0.00713 0.603 0.631
60 2042 164 0.573 0.00740 0.559 0.588
120 497 295 0.453 0.00892 0.436 0.471
TNM_PATH_STAGE_GROUP=3A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7218 190 0.975 0.00178 0.972 0.979
24 6030 499 0.904 0.00348 0.898 0.911
36 4725 432 0.834 0.00456 0.825 0.843
48 3693 331 0.771 0.00538 0.761 0.782
60 2815 205 0.724 0.00598 0.712 0.736
120 598 302 0.597 0.00884 0.580 0.614
TNM_PATH_STAGE_GROUP=3B
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6302 500 0.929 0.00308 0.923 0.935
24 4819 906 0.789 0.00502 0.779 0.799
36 3517 620 0.680 0.00595 0.668 0.691
48 2630 354 0.605 0.00648 0.593 0.618
60 1877 240 0.544 0.00693 0.531 0.558
120 397 319 0.398 0.00921 0.381 0.417
TNM_PATH_STAGE_GROUP=3C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3945 957 0.809 0.00557 0.798 0.820
24 2595 982 0.598 0.00712 0.584 0.612
36 1704 521 0.468 0.00752 0.454 0.483
48 1145 236 0.396 0.00771 0.381 0.411
60 794 108 0.354 0.00788 0.339 0.370
120 129 117 0.265 0.00992 0.246 0.285
TNM_PATH_STAGE_GROUP=4
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2082 3410 0.3899 0.00656 0.3773 0.403
24 1142 761 0.2416 0.00588 0.2304 0.253
36 696 286 0.1760 0.00543 0.1657 0.187
48 485 111 0.1457 0.00520 0.1358 0.156
60 352 43 0.1315 0.00513 0.1218 0.142
120 73 67 0.0975 0.00537 0.0875 0.109
TNM_PATH_STAGE_GROUP=4A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6 1 0.857 0.132 0.633 1
24 3 3 0.429 0.187 0.182 1
36 2 0 0.429 0.187 0.182 1
48 2 0 0.429 0.187 0.182 1
TNM_PATH_STAGE_GROUP=4C
time n.risk n.event survival std.err lower 95% CI upper 95% CI
TNM_PATH_STAGE_GROUP=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1285 210 0.863 0.00879 0.846 0.880
24 1073 173 0.745 0.01129 0.723 0.767
36 937 93 0.679 0.01217 0.656 0.703
48 839 61 0.634 0.01266 0.610 0.659
60 763 30 0.611 0.01289 0.586 0.636
120 298 94 0.521 0.01407 0.494 0.549
TNM_PATH_STAGE_GROUP=99
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 53120 5868 0.906 0.00117 0.904 0.908
24 46141 2896 0.855 0.00144 0.852 0.858
36 39396 2010 0.815 0.00162 0.812 0.819
48 33706 1462 0.783 0.00176 0.780 0.787
60 28481 1103 0.756 0.00188 0.752 0.760
120 7623 2840 0.643 0.00264 0.638 0.648
## Univariable Cox Proportional Hazard Model for: TNM_PATH_STAGE_GROUP
X matrix deemed to be singular; variable 4 15
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ TNM_PATH_STAGE_GROUP, data = data)
n= 260976, number of events= 56315
(8113 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
TNM_PATH_STAGE_GROUP1 -0.34791 0.70617 0.07146 -4.869 1.12e-06 ***
TNM_PATH_STAGE_GROUP1A -0.63876 0.52795 0.06270 -10.187 < 2e-16 ***
TNM_PATH_STAGE_GROUP1B -0.24798 0.78038 0.06249 -3.969 7.23e-05 ***
TNM_PATH_STAGE_GROUP1C NA NA 0.00000 NA NA
TNM_PATH_STAGE_GROUP2 0.53504 1.70753 0.08091 6.613 3.78e-11 ***
TNM_PATH_STAGE_GROUP2A 0.44226 1.55622 0.06320 6.997 2.61e-12 ***
TNM_PATH_STAGE_GROUP2B 0.92649 2.52563 0.06318 14.664 < 2e-16 ***
TNM_PATH_STAGE_GROUP2C 1.50887 4.52160 0.06379 23.652 < 2e-16 ***
TNM_PATH_STAGE_GROUP3 1.11948 3.06327 0.06462 17.325 < 2e-16 ***
TNM_PATH_STAGE_GROUP3A 0.57164 1.77118 0.06519 8.769 < 2e-16 ***
TNM_PATH_STAGE_GROUP3B 1.21380 3.36625 0.06390 18.995 < 2e-16 ***
TNM_PATH_STAGE_GROUP3C 1.81803 6.15971 0.06395 28.430 < 2e-16 ***
TNM_PATH_STAGE_GROUP4 2.87372 17.70272 0.06297 45.634 < 2e-16 ***
TNM_PATH_STAGE_GROUP4A 1.90116 6.69365 0.50374 3.774 0.000161 ***
TNM_PATH_STAGE_GROUP4B NA NA 0.00000 NA NA
TNM_PATH_STAGE_GROUP4C 4.44680 85.35367 1.00195 4.438 9.07e-06 ***
TNM_PATH_STAGE_GROUPN_A 0.96230 2.61770 0.07226 13.317 < 2e-16 ***
TNM_PATH_STAGE_GROUP99 0.52591 1.69200 0.06169 8.525 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
TNM_PATH_STAGE_GROUP1 0.7062 1.41610 0.6139 0.8123
TNM_PATH_STAGE_GROUP1A 0.5279 1.89413 0.4669 0.5970
TNM_PATH_STAGE_GROUP1B 0.7804 1.28143 0.6904 0.8820
TNM_PATH_STAGE_GROUP1C NA NA NA NA
TNM_PATH_STAGE_GROUP2 1.7075 0.58564 1.4571 2.0010
TNM_PATH_STAGE_GROUP2A 1.5562 0.64258 1.3749 1.7615
TNM_PATH_STAGE_GROUP2B 2.5256 0.39594 2.2315 2.8586
TNM_PATH_STAGE_GROUP2C 4.5216 0.22116 3.9902 5.1238
TNM_PATH_STAGE_GROUP3 3.0633 0.32645 2.6989 3.4768
TNM_PATH_STAGE_GROUP3A 1.7712 0.56460 1.5587 2.0126
TNM_PATH_STAGE_GROUP3B 3.3663 0.29707 2.9700 3.8154
TNM_PATH_STAGE_GROUP3C 6.1597 0.16235 5.4341 6.9822
TNM_PATH_STAGE_GROUP4 17.7027 0.05649 15.6472 20.0282
TNM_PATH_STAGE_GROUP4A 6.6936 0.14940 2.4939 17.9658
TNM_PATH_STAGE_GROUP4B NA NA NA NA
TNM_PATH_STAGE_GROUP4C 85.3537 0.01172 11.9774 608.2517
TNM_PATH_STAGE_GROUPN_A 2.6177 0.38201 2.2720 3.0160
TNM_PATH_STAGE_GROUP99 1.6920 0.59102 1.4993 1.9095
Concordance= 0.725 (se = 0.001 )
Rsquare= 0.132 (max possible= 0.994 )
Likelihood ratio test= 36976 on 16 df, p=0
Wald test = 44748 on 16 df, p=0
Score (logrank) test = 69509 on 16 df, p=0
Removed 3 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: TNM_PATH_STAGE_GROUP
This manual palette can handle a maximum of 10 values. You have supplied 17.



Margins
uni_var(test_var = "MARGINS", data_imp = data)
_________________________________________________
## MARGINS
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ MARGINS, data = data)
n events median 0.95LCL 0.95UCL
MARGINS=No Residual 244357 44121 NA NA NA
MARGINS=Residual, NOS 3777 1635 80.33 71.52 88.2
MARGINS=Microscopic Resid 3812 1645 76.94 70.34 88.5
MARGINS=Macroscopic Resid 296 198 20.80 17.35 25.9
MARGINS=Not evaluable 746 312 94.46 73.99 127.9
MARGINS=No surg 12757 9324 8.48 8.11 8.8
MARGINS=Unknown 3344 1125 NA 144.39 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ MARGINS, data = data)
MARGINS=No Residual
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 210996 6551 0.971 0.000351 0.971 0.972
24 183066 9236 0.927 0.000563 0.926 0.928
36 152467 7722 0.885 0.000711 0.884 0.886
48 126531 5573 0.850 0.000822 0.849 0.852
60 102815 4203 0.820 0.000918 0.818 0.821
120 25206 9615 0.698 0.001463 0.695 0.701
MARGINS=Residual, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2825 645 0.821 0.00639 0.809 0.834
24 2274 347 0.717 0.00766 0.702 0.732
36 1839 219 0.644 0.00832 0.628 0.660
48 1450 164 0.583 0.00879 0.566 0.600
60 1181 75 0.551 0.00906 0.533 0.569
120 250 175 0.424 0.01153 0.402 0.447
MARGINS=Microscopic Resid
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2960 563 0.845 0.00600 0.834 0.857
24 2365 378 0.733 0.00748 0.719 0.748
36 1885 250 0.652 0.00823 0.636 0.668
48 1533 149 0.598 0.00867 0.581 0.615
60 1250 101 0.556 0.00902 0.538 0.574
120 240 187 0.417 0.01206 0.394 0.441
MARGINS=Macroscopic Resid
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 179 101 0.648 0.0283 0.595 0.706
24 114 51 0.456 0.0301 0.401 0.519
36 86 15 0.394 0.0300 0.339 0.457
48 60 17 0.311 0.0297 0.258 0.375
60 47 2 0.300 0.0297 0.247 0.364
120 4 11 0.166 0.0394 0.104 0.264
MARGINS=Not evaluable
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 569 122 0.829 0.0141 0.801 0.857
24 448 77 0.712 0.0173 0.679 0.747
36 369 39 0.647 0.0186 0.612 0.685
48 305 18 0.613 0.0193 0.577 0.652
60 244 17 0.576 0.0201 0.537 0.616
120 63 35 0.458 0.0249 0.412 0.509
MARGINS=No surg
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4872 7004 0.426 0.00451 0.418 0.435
24 3117 1317 0.306 0.00429 0.298 0.314
36 2173 484 0.255 0.00416 0.247 0.263
48 1614 227 0.226 0.00411 0.218 0.234
60 1229 111 0.209 0.00411 0.201 0.217
120 267 164 0.165 0.00459 0.157 0.175
MARGINS=Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2681 392 0.877 0.00582 0.866 0.889
24 2292 244 0.795 0.00727 0.781 0.809
36 1979 141 0.744 0.00798 0.728 0.760
48 1735 96 0.706 0.00845 0.690 0.723
60 1484 65 0.678 0.00881 0.661 0.696
120 447 160 0.571 0.01108 0.550 0.593
## Univariable Cox Proportional Hazard Model for: MARGINS
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ MARGINS, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
MARGINSResidual, NOS 1.09487 2.98881 0.02519 43.47 <2e-16 ***
MARGINSMicroscopic Resid 1.07437 2.92814 0.02512 42.77 <2e-16 ***
MARGINSMacroscopic Resid 1.94673 7.00576 0.07125 27.32 <2e-16 ***
MARGINSNot evaluable 1.01504 2.75946 0.05681 17.87 <2e-16 ***
MARGINSNo surg 2.40784 11.10996 0.01156 208.28 <2e-16 ***
MARGINSUnknown 0.62231 1.86323 0.03020 20.61 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
MARGINSResidual, NOS 2.989 0.33458 2.845 3.140
MARGINSMicroscopic Resid 2.928 0.34151 2.787 3.076
MARGINSMacroscopic Resid 7.006 0.14274 6.093 8.056
MARGINSNot evaluable 2.759 0.36239 2.469 3.085
MARGINSNo surg 11.110 0.09001 10.861 11.365
MARGINSUnknown 1.863 0.53670 1.756 1.977
Concordance= 0.629 (se = 0.001 )
Rsquare= 0.101 (max possible= 0.994 )
Likelihood ratio test= 28792 on 6 df, p=0
Wald test = 45274 on 6 df, p=0
Score (logrank) test = 68916 on 6 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: MARGINS



Margins Yes/No
#uni_var(test_var = "MARGINS_YN", data_imp = data)
30 Day Readmission
uni_var(test_var = "READM_HOSP_30_DAYS_F", data_imp = data)
_________________________________________________
## READM_HOSP_30_DAYS_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ READM_HOSP_30_DAYS_F, data = data)
n events median 0.95LCL 0.95UCL
READM_HOSP_30_DAYS_F=No_Surg_or_No_Readmit 257592 54886 NA NA NA
READM_HOSP_30_DAYS_F=Unplan_Readmit_Same 2551 852 130 117 152
READM_HOSP_30_DAYS_F=Plan_Readmit_Same 3999 1119 NA 157 NA
READM_HOSP_30_DAYS_F=PlanUnplan_Same 395 96 NA 122 NA
READM_HOSP_30_DAYS_F=9 4552 1407 NA 160 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ READM_HOSP_30_DAYS_F, data = data)
READM_HOSP_30_DAYS_F=No_Surg_or_No_Readmit
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 215352 14575 0.940 0.000481 0.939 0.941
24 185258 10909 0.890 0.000650 0.889 0.892
36 153547 8354 0.847 0.000770 0.846 0.849
48 127017 5856 0.813 0.000863 0.811 0.814
60 102949 4317 0.783 0.000944 0.781 0.785
120 24862 9659 0.665 0.001437 0.663 0.668
READM_HOSP_30_DAYS_F=Unplan_Readmit_Same
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2035 264 0.891 0.00633 0.879 0.904
24 1698 177 0.811 0.00815 0.795 0.827
36 1426 108 0.756 0.00913 0.739 0.775
48 1168 91 0.705 0.00998 0.686 0.725
60 939 59 0.667 0.01061 0.646 0.688
120 240 135 0.525 0.01435 0.498 0.554
READM_HOSP_30_DAYS_F=Plan_Readmit_Same
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3450 180 0.952 0.00348 0.945 0.959
24 2949 278 0.873 0.00556 0.862 0.884
36 2504 184 0.816 0.00660 0.803 0.829
48 2100 134 0.770 0.00734 0.755 0.784
60 1731 90 0.734 0.00790 0.719 0.750
120 520 226 0.598 0.01072 0.578 0.620
READM_HOSP_30_DAYS_F=PlanUnplan_Same
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 344 21 0.944 0.0118 0.921 0.968
24 304 15 0.902 0.0156 0.872 0.933
36 242 21 0.834 0.0203 0.795 0.875
48 201 13 0.786 0.0230 0.742 0.833
60 166 7 0.758 0.0246 0.711 0.808
120 18 17 0.617 0.0441 0.537 0.710
READM_HOSP_30_DAYS_F=9
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3901 338 0.923 0.00404 0.915 0.931
24 3467 271 0.857 0.00536 0.847 0.868
36 3079 203 0.806 0.00615 0.794 0.818
48 2742 150 0.765 0.00667 0.752 0.778
60 2465 101 0.736 0.00702 0.722 0.750
120 837 310 0.618 0.00866 0.601 0.635
## Univariable Cox Proportional Hazard Model for: READM_HOSP_30_DAYS_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ READM_HOSP_30_DAYS_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
READM_HOSP_30_DAYS_FUnplan_Readmit_Same 0.51036 1.66590 0.03452 14.783 < 2e-16 ***
READM_HOSP_30_DAYS_FPlan_Readmit_Same 0.20743 1.23052 0.03020 6.869 6.47e-12 ***
READM_HOSP_30_DAYS_FPlanUnplan_Same 0.13446 1.14392 0.10215 1.316 0.188
READM_HOSP_30_DAYS_F9 0.18912 1.20819 0.02701 7.001 2.55e-12 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
READM_HOSP_30_DAYS_FUnplan_Readmit_Same 1.666 0.6003 1.5569 1.783
READM_HOSP_30_DAYS_FPlan_Readmit_Same 1.231 0.8127 1.1598 1.306
READM_HOSP_30_DAYS_FPlanUnplan_Same 1.144 0.8742 0.9364 1.397
READM_HOSP_30_DAYS_F9 1.208 0.8277 1.1459 1.274
Concordance= 0.507 (se = 0 )
Rsquare= 0.001 (max possible= 0.994 )
Likelihood ratio test= 271.2 on 4 df, p=0
Wald test = 306.7 on 4 df, p=0
Score (logrank) test = 311.6 on 4 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: READM_HOSP_30_DAYS_F



Radiation Type
uni_var(test_var = "RX_SUMM_RADIATION_F", data_imp = data)
_________________________________________________
## RX_SUMM_RADIATION_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_SUMM_RADIATION_F, data = data)
n events median 0.95LCL 0.95UCL
RX_SUMM_RADIATION_F=None 258472 51549 NA NA NA
RX_SUMM_RADIATION_F=Beam Radiation 8638 6244 14.1 13.4 14.8
RX_SUMM_RADIATION_F=Radioactive Implants 68 42 29.7 23.4 64.3
RX_SUMM_RADIATION_F=Radioisotopes 5 3 44.4 12.4 NA
RX_SUMM_RADIATION_F=Beam + Imp or Isotopes 46 35 22.9 18.2 30.1
RX_SUMM_RADIATION_F=Radiation, NOS 85 58 18.6 11.9 27.8
RX_SUMM_RADIATION_F=Unknown 1775 429 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_SUMM_RADIATION_F, data = data)
RX_SUMM_RADIATION_F=None
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 218978 11287 0.954 0.000426 0.953 0.955
24 189295 10376 0.907 0.000607 0.905 0.908
36 157485 8250 0.864 0.000736 0.863 0.866
48 130533 5965 0.829 0.000835 0.827 0.831
60 106060 4381 0.799 0.000922 0.797 0.801
120 25905 10033 0.679 0.001426 0.676 0.682
RX_SUMM_RADIATION_F=Beam Radiation
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4407 3955 0.536 0.00542 0.525 0.547
24 2878 1169 0.388 0.00539 0.377 0.398
36 1974 544 0.309 0.00525 0.299 0.320
48 1454 238 0.269 0.00518 0.259 0.279
60 1067 142 0.240 0.00516 0.231 0.251
120 196 179 0.175 0.00601 0.164 0.188
RX_SUMM_RADIATION_F=Radioactive Implants
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 55 11 0.834 0.0457 0.749 0.929
24 37 16 0.588 0.0610 0.480 0.720
36 22 10 0.417 0.0630 0.310 0.561
48 15 2 0.375 0.0635 0.269 0.522
60 14 0 0.375 0.0635 0.269 0.522
120 5 3 0.270 0.0691 0.164 0.446
RX_SUMM_RADIATION_F=Radioisotopes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3 1 0.800 0.179 0.5161 1
24 2 1 0.533 0.248 0.2142 1
36 2 0 0.533 0.248 0.2142 1
48 1 1 0.267 0.226 0.0507 1
60 1 0 0.267 0.226 0.0507 1
RX_SUMM_RADIATION_F=Beam + Imp or Isotopes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 35 10 0.778 0.0620 0.665 0.909
24 21 14 0.467 0.0744 0.341 0.638
36 9 8 0.272 0.0687 0.165 0.446
48 4 2 0.211 0.0653 0.115 0.387
60 3 0 0.211 0.0653 0.115 0.387
RX_SUMM_RADIATION_F=Radiation, NOS
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 49 34 0.591 0.0539 0.494 0.707
24 33 11 0.454 0.0551 0.358 0.576
36 19 9 0.325 0.0537 0.235 0.449
48 15 2 0.288 0.0536 0.200 0.415
60 12 2 0.248 0.0531 0.163 0.377
120 3 0 0.248 0.0531 0.163 0.377
RX_SUMM_RADIATION_F=Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1555 80 0.953 0.00518 0.942 0.963
24 1410 63 0.913 0.00697 0.899 0.927
36 1287 49 0.880 0.00813 0.864 0.896
48 1206 34 0.857 0.00887 0.839 0.874
60 1093 49 0.821 0.00985 0.802 0.841
120 368 131 0.682 0.01417 0.655 0.710
## Univariable Cox Proportional Hazard Model for: RX_SUMM_RADIATION_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_SUMM_RADIATION_F, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
RX_SUMM_RADIATION_FBeam Radiation 2.01913 7.53176 0.01352 149.369 < 2e-16 ***
RX_SUMM_RADIATION_FRadioactive Implants 1.47544 4.37298 0.15437 9.558 < 2e-16 ***
RX_SUMM_RADIATION_FRadioisotopes 1.61628 5.03434 0.57737 2.799 0.00512 **
RX_SUMM_RADIATION_FBeam + Imp or Isotopes 1.94091 6.96510 0.16911 11.477 < 2e-16 ***
RX_SUMM_RADIATION_FRadiation, NOS 1.84128 6.30458 0.13139 14.014 < 2e-16 ***
RX_SUMM_RADIATION_FUnknown -0.04298 0.95793 0.04849 -0.886 0.37546
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
RX_SUMM_RADIATION_FBeam Radiation 7.5318 0.1328 7.3348 7.734
RX_SUMM_RADIATION_FRadioactive Implants 4.3730 0.2287 3.2313 5.918
RX_SUMM_RADIATION_FRadioisotopes 5.0343 0.1986 1.6236 15.610
RX_SUMM_RADIATION_FBeam + Imp or Isotopes 6.9651 0.1436 5.0001 9.702
RX_SUMM_RADIATION_FRadiation, NOS 6.3046 0.1586 4.8732 8.156
RX_SUMM_RADIATION_FUnknown 0.9579 1.0439 0.8711 1.053
Concordance= 0.562 (se = 0 )
Rsquare= 0.051 (max possible= 0.994 )
Likelihood ratio test= 13991 on 6 df, p=0
Wald test = 22652 on 6 df, p=0
Score (logrank) test = 31385 on 6 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: RX_SUMM_RADIATION_F



Lymphovascular Invasion
uni_var(test_var = "LYMPH_VASCULAR_INVASION_F", data_imp = data)
_________________________________________________
## LYMPH_VASCULAR_INVASION_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ LYMPH_VASCULAR_INVASION_F, data = data)
119720 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
LYMPH_VASCULAR_INVASION_F=Neg_LymphVasc_Inv 106669 13009 95.9 95.93 NA
LYMPH_VASCULAR_INVASION_F=Pos_LumphVasc_Inv 5852 2420 53.2 50.17 56.5
LYMPH_VASCULAR_INVASION_F=N_A 34 16 17.4 7.49 NA
LYMPH_VASCULAR_INVASION_F=Unknown 36814 8703 95.5 NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ LYMPH_VASCULAR_INVASION_F, data = data)
119720 observations deleted due to missingness
LYMPH_VASCULAR_INVASION_F=Neg_LymphVasc_Inv
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 88628 2899 0.970 0.000544 0.969 0.971
24 71808 3448 0.930 0.000856 0.928 0.931
36 51872 2757 0.889 0.001118 0.887 0.891
48 35456 1808 0.853 0.001363 0.850 0.855
60 21585 1118 0.819 0.001637 0.816 0.823
LYMPH_VASCULAR_INVASION_F=Pos_LumphVasc_Inv
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4405 917 0.835 0.00498 0.826 0.845
24 3125 734 0.687 0.00645 0.674 0.700
36 2066 394 0.591 0.00716 0.577 0.605
48 1320 200 0.524 0.00777 0.509 0.539
60 715 104 0.473 0.00850 0.456 0.490
LYMPH_VASCULAR_INVASION_F=N_A
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 12 15 0.522 0.0906 0.371 0.733
24 3 1 0.464 0.0973 0.307 0.700
LYMPH_VASCULAR_INVASION_F=Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 27742 4464 0.871 0.00180 0.868 0.875
24 22598 1761 0.813 0.00215 0.809 0.817
36 17286 1076 0.770 0.00241 0.765 0.775
48 12607 638 0.738 0.00262 0.733 0.743
60 8071 418 0.708 0.00290 0.703 0.714
## Univariable Cox Proportional Hazard Model for: LYMPH_VASCULAR_INVASION_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ LYMPH_VASCULAR_INVASION_F, data = data)
n= 149369, number of events= 24148
(119720 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
LYMPH_VASCULAR_INVASION_FPos_LumphVasc_Inv 1.40672 4.08253 0.02216 63.48 <2e-16 ***
LYMPH_VASCULAR_INVASION_FN_A 2.52862 12.53615 0.25023 10.11 <2e-16 ***
LYMPH_VASCULAR_INVASION_FUnknown 0.71042 2.03484 0.01385 51.28 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
LYMPH_VASCULAR_INVASION_FPos_LumphVasc_Inv 4.083 0.24495 3.909 4.264
LYMPH_VASCULAR_INVASION_FN_A 12.536 0.07977 7.677 20.472
LYMPH_VASCULAR_INVASION_FUnknown 2.035 0.49144 1.980 2.091
Concordance= 0.625 (se = 0.002 )
Rsquare= 0.031 (max possible= 0.975 )
Likelihood ratio test= 4739 on 3 df, p=0
Wald test = 5441 on 3 df, p=0
Score (logrank) test = 6055 on 3 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: LYMPH_VASCULAR_INVASION_F



Endoscopic/Robotic
uni_var(test_var = "RX_HOSP_SURG_APPR_2010_F", data_imp = data)
_________________________________________________
## RX_HOSP_SURG_APPR_2010_F
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_HOSP_SURG_APPR_2010_F, data = data)
119720 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
RX_HOSP_SURG_APPR_2010_F=No_Surg 14021 6564 37.8 35.4 40.4
RX_HOSP_SURG_APPR_2010_F=Robot_Assist 117 21 NA 68.0 NA
RX_HOSP_SURG_APPR_2010_F=Robot_to_Open 28 2 NA NA NA
RX_HOSP_SURG_APPR_2010_F=Endo_Lap 356 88 NA 85.3 NA
RX_HOSP_SURG_APPR_2010_F=Endo_Lap_to_Open 131 24 NA 81.5 NA
RX_HOSP_SURG_APPR_2010_F=Open_Unknown 134691 17440 95.9 95.5 NA
RX_HOSP_SURG_APPR_2010_F=Unknown 25 9 16.0 11.2 NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_HOSP_SURG_APPR_2010_F, data = data)
119720 observations deleted due to missingness
RX_HOSP_SURG_APPR_2010_F=No_Surg
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 8123 4416 0.667 0.00411 0.659 0.675
24 5881 1156 0.566 0.00444 0.558 0.575
36 3966 546 0.507 0.00465 0.498 0.516
48 2617 260 0.468 0.00488 0.459 0.478
60 1550 108 0.444 0.00516 0.434 0.454
RX_HOSP_SURG_APPR_2010_F=Robot_Assist
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 96 6 0.944 0.0224 0.901 0.989
24 76 5 0.889 0.0318 0.829 0.953
36 61 6 0.813 0.0415 0.736 0.899
48 39 2 0.785 0.0447 0.702 0.877
60 17 0 0.785 0.0447 0.702 0.877
RX_HOSP_SURG_APPR_2010_F=Robot_to_Open
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 22 1 0.957 0.0425 0.877 1
24 15 0 0.957 0.0425 0.877 1
36 12 0 0.957 0.0425 0.877 1
48 8 0 0.957 0.0425 0.877 1
60 2 1 0.797 0.1498 0.552 1
RX_HOSP_SURG_APPR_2010_F=Endo_Lap
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 283 28 0.915 0.0154 0.885 0.945
24 221 21 0.842 0.0209 0.802 0.884
36 157 20 0.755 0.0263 0.705 0.808
48 99 11 0.692 0.0302 0.635 0.754
60 55 7 0.634 0.0348 0.570 0.706
RX_HOSP_SURG_APPR_2010_F=Endo_Lap_to_Open
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 102 6 0.949 0.0204 0.909 0.990
24 92 3 0.920 0.0257 0.871 0.972
36 77 5 0.866 0.0336 0.803 0.935
48 54 3 0.829 0.0384 0.757 0.908
60 40 1 0.812 0.0414 0.734 0.897
RX_HOSP_SURG_APPR_2010_F=Open_Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 112151 3832 0.969 0.000495 0.968 0.970
24 91242 4756 0.925 0.000784 0.923 0.926
36 66945 3650 0.883 0.001011 0.881 0.885
48 46563 2370 0.847 0.001216 0.844 0.849
60 28705 1523 0.813 0.001450 0.810 0.816
RX_HOSP_SURG_APPR_2010_F=Unknown
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 10 6 0.641 0.118 0.447 0.921
24 7 3 0.449 0.124 0.261 0.773
36 6 0 0.449 0.124 0.261 0.773
48 3 0 0.449 0.124 0.261 0.773
60 2 0 0.449 0.124 0.261 0.773
## Univariable Cox Proportional Hazard Model for: RX_HOSP_SURG_APPR_2010_F
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RX_HOSP_SURG_APPR_2010_F, data = data)
n= 149369, number of events= 24148
(119720 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
RX_HOSP_SURG_APPR_2010_FRobot_Assist -1.33308 0.26366 0.21857 -6.099 1.07e-09 ***
RX_HOSP_SURG_APPR_2010_FRobot_to_Open -2.11286 0.12089 0.70722 -2.988 0.00281 **
RX_HOSP_SURG_APPR_2010_FEndo_Lap -0.94607 0.38826 0.10732 -8.816 < 2e-16 ***
RX_HOSP_SURG_APPR_2010_FEndo_Lap_to_Open -1.42817 0.23975 0.20451 -6.983 2.88e-12 ***
RX_HOSP_SURG_APPR_2010_FOpen_Unknown -1.69257 0.18405 0.01452 -116.530 < 2e-16 ***
RX_HOSP_SURG_APPR_2010_FUnknown 0.10349 1.10903 0.33356 0.310 0.75637
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
RX_HOSP_SURG_APPR_2010_FRobot_Assist 0.2637 3.7927 0.17179 0.4047
RX_HOSP_SURG_APPR_2010_FRobot_to_Open 0.1209 8.2719 0.03023 0.4835
RX_HOSP_SURG_APPR_2010_FEndo_Lap 0.3883 2.5756 0.31462 0.4792
RX_HOSP_SURG_APPR_2010_FEndo_Lap_to_Open 0.2397 4.1710 0.16058 0.3580
RX_HOSP_SURG_APPR_2010_FOpen_Unknown 0.1840 5.4334 0.17888 0.1894
RX_HOSP_SURG_APPR_2010_FUnknown 1.1090 0.9017 0.57678 2.1324
Concordance= 0.636 (se = 0.001 )
Rsquare= 0.065 (max possible= 0.975 )
Likelihood ratio test= 10100 on 6 df, p=0
Wald test = 13605 on 6 df, p=0
Score (logrank) test = 17140 on 6 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: RX_HOSP_SURG_APPR_2010_F



Surgery Radiation Sequence
uni_var(test_var = "SURG_RAD_SEQ", data_imp = data)
_________________________________________________
## SURG_RAD_SEQ
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURG_RAD_SEQ, data = data)
n events median 0.95LCL 0.95UCL
SURG_RAD_SEQ=Surg Alone 249888 45721 NA NA NA
SURG_RAD_SEQ=Surg then Rad 4529 2765 30.00 28.22 31.70
SURG_RAD_SEQ=Rad Alone 4187 3528 5.95 5.62 6.28
SURG_RAD_SEQ=No Treatment 8084 5458 11.10 10.48 11.83
SURG_RAD_SEQ=Other 2299 813 154.78 140.91 NA
SURG_RAD_SEQ=Rad before and after Surg 15 11 11.10 8.51 NA
SURG_RAD_SEQ=Rad then Surg 87 64 16.62 12.39 24.67
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURG_RAD_SEQ, data = data)
SURG_RAD_SEQ=Surg Alone
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 215373 7061 0.970 0.000355 0.969 0.970
24 186896 9505 0.925 0.000562 0.924 0.926
36 155753 7918 0.883 0.000707 0.882 0.884
48 129243 5795 0.848 0.000817 0.846 0.849
60 105072 4297 0.817 0.000912 0.815 0.819
120 25677 9900 0.695 0.001448 0.692 0.698
SURG_RAD_SEQ=Surg then Rad
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3231 1145 0.743 0.00656 0.730 0.756
24 2227 748 0.564 0.00758 0.549 0.579
36 1574 410 0.454 0.00782 0.439 0.469
48 1163 185 0.396 0.00789 0.381 0.412
60 855 117 0.353 0.00800 0.337 0.369
120 165 148 0.256 0.00959 0.238 0.275
SURG_RAD_SEQ=Rad Alone
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1248 2815 0.3176 0.00729 0.3037 0.332
24 699 444 0.1997 0.00639 0.1875 0.213
36 423 151 0.1520 0.00594 0.1408 0.164
48 302 58 0.1294 0.00576 0.1186 0.141
60 222 27 0.1170 0.00568 0.1064 0.129
120 33 28 0.0913 0.00654 0.0794 0.105
SURG_RAD_SEQ=No Treatment
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3439 3940 0.485 0.00576 0.474 0.496
24 2285 832 0.362 0.00567 0.351 0.373
36 1649 309 0.309 0.00558 0.299 0.321
48 1223 164 0.276 0.00556 0.265 0.287
60 936 74 0.257 0.00559 0.247 0.268
120 217 127 0.204 0.00633 0.192 0.217
SURG_RAD_SEQ=Other
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 1733 374 0.830 0.00804 0.814 0.845
24 1533 103 0.779 0.00896 0.762 0.797
36 1377 72 0.741 0.00957 0.723 0.760
48 1277 42 0.718 0.00991 0.699 0.738
60 1149 59 0.684 0.01038 0.664 0.705
120 379 140 0.566 0.01279 0.542 0.592
SURG_RAD_SEQ=Rad before and after Surg
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 6 9 0.40 0.126 0.2152 0.743
24 5 0 0.40 0.126 0.2152 0.743
36 3 2 0.24 0.116 0.0931 0.619
48 3 0 0.24 0.116 0.0931 0.619
60 3 0 0.24 0.116 0.0931 0.619
120 3 0 0.24 0.116 0.0931 0.619
SURG_RAD_SEQ=Rad then Surg
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 52 34 0.603 0.0530 0.5072 0.716
24 31 18 0.387 0.0532 0.2954 0.506
36 19 8 0.284 0.0501 0.2010 0.401
48 17 0 0.284 0.0501 0.2010 0.401
60 13 0 0.284 0.0501 0.2010 0.401
120 3 4 0.173 0.0543 0.0931 0.320
## Univariable Cox Proportional Hazard Model for: SURG_RAD_SEQ
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURG_RAD_SEQ, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
SURG_RAD_SEQSurg then Rad 1.64715 5.19217 0.01963 83.916 < 2e-16 ***
SURG_RAD_SEQRad Alone 2.82423 16.84800 0.01775 159.143 < 2e-16 ***
SURG_RAD_SEQNo Treatment 2.20704 9.08882 0.01441 153.185 < 2e-16 ***
SURG_RAD_SEQOther 0.61731 1.85394 0.03539 17.441 < 2e-16 ***
SURG_RAD_SEQRad before and after Surg 1.95441 7.05974 0.30156 6.481 9.11e-11 ***
SURG_RAD_SEQRad then Surg 2.10172 8.18025 0.12510 16.800 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
SURG_RAD_SEQSurg then Rad 5.192 0.19260 4.996 5.396
SURG_RAD_SEQRad Alone 16.848 0.05935 16.272 17.444
SURG_RAD_SEQNo Treatment 9.089 0.11003 8.836 9.349
SURG_RAD_SEQOther 1.854 0.53939 1.730 1.987
SURG_RAD_SEQRad before and after Surg 7.060 0.14165 3.909 12.749
SURG_RAD_SEQRad then Surg 8.180 0.12225 6.401 10.453
Concordance= 0.623 (se = 0 )
Rsquare= 0.106 (max possible= 0.994 )
Likelihood ratio test= 30027 on 6 df, p=0
Wald test = 48241 on 6 df, p=0
Score (logrank) test = 76988 on 6 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: SURG_RAD_SEQ



Surgery Yes/No
uni_var(test_var = "SURGERY_YN", data_imp = data)
_________________________________________________
## SURGERY_YN
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURGERY_YN, data = data)
n events median 0.95LCL 0.95UCL
SURGERY_YN=No 12368 9042 8.41 8.05 8.74
SURGERY_YN=Ukn 510 336 13.96 11.24 16.59
SURGERY_YN=Yes 256211 48982 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURGERY_YN, data = data)
SURGERY_YN=No
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4708 6815 0.425 0.00457 0.416 0.434
24 3008 1271 0.305 0.00435 0.296 0.313
36 2093 459 0.254 0.00423 0.246 0.263
48 1549 220 0.225 0.00418 0.217 0.234
60 1179 101 0.209 0.00418 0.201 0.218
120 256 159 0.165 0.00470 0.156 0.175
SURGERY_YN=Ukn
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 228 218 0.530 0.0233 0.486 0.577
24 154 57 0.393 0.0233 0.350 0.441
36 111 29 0.314 0.0228 0.273 0.362
48 89 9 0.287 0.0226 0.246 0.335
60 70 12 0.246 0.0222 0.207 0.294
120 15 11 0.195 0.0225 0.156 0.245
SURGERY_YN=Yes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 220146 8345 0.965 0.000375 0.964 0.966
24 190514 10322 0.918 0.000578 0.917 0.919
36 158594 8382 0.875 0.000718 0.873 0.876
48 131590 6015 0.839 0.000823 0.838 0.841
60 107001 4461 0.808 0.000913 0.806 0.810
120 26206 10177 0.687 0.001431 0.684 0.689
## Univariable Cox Proportional Hazard Model for: SURGERY_YN
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURGERY_YN, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
SURGERY_YNUkn -0.30186 0.73944 0.05556 -5.433 5.55e-08 ***
SURGERY_YNYes -2.34789 0.09557 0.01161 -202.229 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
SURGERY_YNUkn 0.73944 1.352 0.66315 0.82452
SURGERY_YNYes 0.09557 10.463 0.09342 0.09777
Concordance= 0.599 (se = 0 )
Rsquare= 0.09 (max possible= 0.994 )
Likelihood ratio test= 25267 on 2 df, p=0
Wald test = 41800 on 2 df, p=0
Score (logrank) test = 64329 on 2 df, p=0
no non-missing arguments to min; returning Infno non-missing arguments to max; returning -InfTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisTransformation introduced infinite values in continuous y-axisRemoved 1 rows containing missing values (geom_errorbar).Removed 1 rows containing missing values (geom_text).Removed 1 rows containing missing values (geom_text).Removed 1 rows containing missing values (geom_text).Removed 1 rows containing missing values (geom_text).Removed 1 rows containing missing values (geom_text).Removed 1 rows containing missing values (geom_text).
## Unadjusted Kaplan Meier Overall Survival Curve for: SURGERY_YN



Radiation Yes/No
uni_var(test_var = "RADIATION_YN", data_imp = data)
_________________________________________________
## RADIATION_YN
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RADIATION_YN, data = data)
1913 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
RADIATION_YN=No 258334 51411 NA NA NA
RADIATION_YN=Yes 8842 6382 14.4 13.7 15.1
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RADIATION_YN, data = data)
1913 observations deleted due to missingness
RADIATION_YN=No
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 218976 11150 0.954 0.000424 0.953 0.955
24 189294 10376 0.907 0.000606 0.906 0.908
36 157485 8249 0.865 0.000735 0.863 0.866
48 130533 5965 0.830 0.000835 0.828 0.831
60 106060 4381 0.799 0.000921 0.798 0.801
120 25905 10033 0.680 0.001426 0.677 0.682
RADIATION_YN=Yes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 4549 4011 0.540 0.00535 0.530 0.551
24 2971 1211 0.390 0.00533 0.380 0.401
36 2026 571 0.310 0.00519 0.300 0.320
48 1489 245 0.270 0.00512 0.260 0.280
60 1097 144 0.241 0.00510 0.231 0.251
120 204 183 0.177 0.00592 0.166 0.189
## Univariable Cox Proportional Hazard Model for: RADIATION_YN
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ RADIATION_YN, data = data)
n= 267176, number of events= 57793
(1913 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
RADIATION_YNYes 2.01638 7.51106 0.01339 150.6 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
RADIATION_YNYes 7.511 0.1331 7.316 7.711
Concordance= 0.562 (se = 0 )
Rsquare= 0.051 (max possible= 0.994 )
Likelihood ratio test= 14012 on 1 df, p=0
Wald test = 22675 on 1 df, p=0
Score (logrank) test = 31419 on 1 df, p=0
## Unadjusted Kaplan Meier Overall Survival Curve for: RADIATION_YN



Chemo Yes/No
uni_var(test_var = "CHEMO_YN", data_imp = data)
_________________________________________________
## CHEMO_YN
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ CHEMO_YN, data = data)
n events median 0.95LCL 0.95UCL
CHEMO_YN=No 253329 51407 NA NA NA
CHEMO_YN=Yes 7241 5006 16.1 15.4 16.9
CHEMO_YN=Ukn 8519 1947 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ CHEMO_YN, data = data)
CHEMO_YN=No
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 213928 11856 0.951 0.000443 0.950 0.951
24 184701 10208 0.903 0.000622 0.902 0.904
36 153351 8154 0.860 0.000751 0.859 0.862
48 126949 5852 0.825 0.000851 0.824 0.827
60 103015 4301 0.795 0.000937 0.793 0.797
120 24943 9811 0.674 0.001449 0.672 0.677
CHEMO_YN=Yes
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 3931 3026 0.574 0.00589 0.562 0.585
24 2604 1084 0.410 0.00595 0.399 0.422
36 1940 422 0.341 0.00583 0.330 0.352
48 1522 202 0.303 0.00576 0.292 0.315
60 1197 98 0.282 0.00574 0.271 0.294
120 298 158 0.229 0.00618 0.218 0.242
CHEMO_YN=Ukn
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 7223 496 0.939 0.00266 0.934 0.944
24 6371 358 0.891 0.00354 0.884 0.898
36 5507 294 0.848 0.00417 0.839 0.856
48 4757 190 0.817 0.00458 0.808 0.826
60 4038 175 0.785 0.00500 0.775 0.795
120 1236 378 0.677 0.00695 0.663 0.691
## Univariable Cox Proportional Hazard Model for: CHEMO_YN
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ CHEMO_YN, data = data)
n= 269089, number of events= 58360
coef exp(coef) se(coef) z Pr(>|z|)
CHEMO_YNYes 1.80502 6.08011 0.01487 121.40 <2e-16 ***
CHEMO_YNUkn 0.02886 1.02928 0.02309 1.25 0.211
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
CHEMO_YNYes 6.080 0.1645 5.9055 6.260
CHEMO_YNUkn 1.029 0.9715 0.9837 1.077
Concordance= 0.547 (se = 0 )
Rsquare= 0.034 (max possible= 0.994 )
Likelihood ratio test= 9353 on 2 df, p=0
Wald test = 14768 on 2 df, p=0
Score (logrank) test = 19221 on 2 df, p=0
Removed 1 rows containing missing values (geom_errorbar).
## Unadjusted Kaplan Meier Overall Survival Curve for: CHEMO_YN



Treatment Yes/No
uni_var(test_var = "Tx_YN", data_imp = data)
_________________________________________________
## Tx_YN
_________________________________________________
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ Tx_YN, data = data)
8519 observations deleted due to missingness
n events median 0.95LCL 0.95UCL
Tx_YN=FALSE 6106 3952 12 10.9 12.9
Tx_YN=TRUE 254464 52461 NA NA NA
Call: survfit(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ Tx_YN, data = data)
8519 observations deleted due to missingness
Tx_YN=FALSE
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 2646 2887 0.499 0.00663 0.487 0.513
24 1857 529 0.395 0.00663 0.382 0.408
36 1355 230 0.342 0.00660 0.329 0.355
48 1013 124 0.308 0.00662 0.295 0.321
60 782 59 0.288 0.00668 0.275 0.301
120 171 114 0.223 0.00775 0.208 0.239
Tx_YN=TRUE
time n.risk n.event survival std.err lower 95% CI upper 95% CI
12 215213 11995 0.950 0.000446 0.949 0.951
24 185448 10763 0.900 0.000629 0.899 0.902
36 153936 8346 0.857 0.000757 0.856 0.858
48 127458 5930 0.822 0.000855 0.820 0.823
60 103430 4340 0.791 0.000940 0.789 0.793
120 25070 9855 0.671 0.001442 0.669 0.674
## Univariable Cox Proportional Hazard Model for: Tx_YN
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ Tx_YN, data = data)
n= 260570, number of events= 56413
(8519 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
Tx_YNTRUE -1.96628 0.13998 0.01655 -118.8 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
Tx_YNTRUE 0.14 7.144 0.1355 0.1446
Concordance= 0.542 (se = 0 )
Rsquare= 0.032 (max possible= 0.994 )
Likelihood ratio test= 8508 on 1 df, p=0
Wald test = 14109 on 1 df, p=0
Score (logrank) test = 19273 on 1 df, p=0
## Unadjusted Kaplan Meier Overall Survival Curve for: Tx_YN



Tumor specific Variables
Node Size
Cox Proportional Hazard Ratio
Model #1
Full analysis
model_one <- coxph(Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS == 0)
~ SURG_RAD_SEQ + INSURANCE_F + AGE + SEX_F + RACE_F + INCOME_F + U_R_F +
FACILITY_TYPE_F + FACILITY_LOCATION_F + EDUCATION_F,
data = data)
X matrix deemed to be singular; variable 11
model_one %>% summary()
Call:
coxph(formula = Surv(DX_LASTCONTACT_DEATH_MONTHS, PUF_VITAL_STATUS ==
0) ~ SURG_RAD_SEQ + INSURANCE_F + AGE + SEX_F + RACE_F +
INCOME_F + U_R_F + FACILITY_TYPE_F + FACILITY_LOCATION_F +
EDUCATION_F, data = data)
n= 223688, number of events= 53890
(45401 observations deleted due to missingness)
coef exp(coef) se(coef) z Pr(>|z|)
SURG_RAD_SEQSurg then Rad 1.3334890 3.7942584 0.0207881 64.147 < 2e-16 ***
SURG_RAD_SEQRad Alone 2.6257681 13.8151819 0.0187879 139.758 < 2e-16 ***
SURG_RAD_SEQNo Treatment 2.0220291 7.5536363 0.0151774 133.226 < 2e-16 ***
SURG_RAD_SEQOther 0.5727957 1.7732175 0.0368887 15.528 < 2e-16 ***
SURG_RAD_SEQRad before and after Surg 2.4639754 11.7514357 0.3334653 7.389 1.48e-13 ***
SURG_RAD_SEQRad then Surg 1.7519354 5.7657508 0.1304128 13.434 < 2e-16 ***
INSURANCE_FNone 0.8209855 2.2727384 0.0258866 31.715 < 2e-16 ***
INSURANCE_FMedicaid 1.0004722 2.7195656 0.0247808 40.373 < 2e-16 ***
INSURANCE_FMedicare 0.1935083 1.2134995 0.0124053 15.599 < 2e-16 ***
INSURANCE_FOther Government 0.2588749 1.2954717 0.0441113 5.869 4.39e-09 ***
INSURANCE_FUnknown NA NA 0.0000000 NA NA
AGE 0.0539653 1.0554480 0.0004743 113.786 < 2e-16 ***
SEX_FFemale -0.3085452 0.7345147 0.0090604 -34.054 < 2e-16 ***
RACE_FBlack 0.3306533 1.3918772 0.0383802 8.615 < 2e-16 ***
RACE_FOther/Unk -0.0729303 0.9296657 0.0345090 -2.113 0.034569 *
RACE_FAsian 0.1298987 1.1387131 0.0667022 1.947 0.051482 .
INCOME_F$38,000 - $47,999 -0.0294684 0.9709616 0.0152906 -1.927 0.053952 .
INCOME_F$48,000 - $62,999 -0.0823765 0.9209252 0.0163096 -5.051 4.40e-07 ***
INCOME_F$63,000 + -0.1521152 0.8588893 0.0185055 -8.220 2.22e-16 ***
U_R_FUrban -0.0386369 0.9620999 0.0130657 -2.957 0.003105 **
U_R_FRural -0.0275118 0.9728632 0.0306390 -0.898 0.369221
FACILITY_TYPE_FComprehensive Comm Ca Program -0.0398850 0.9608999 0.0169910 -2.347 0.018904 *
FACILITY_TYPE_FAcademic/Research Program -0.1218022 0.8853235 0.0169484 -7.187 6.64e-13 ***
FACILITY_TYPE_FIntegrated Network Ca Program 0.0046987 1.0047097 0.0200303 0.235 0.814537
FACILITY_LOCATION_FMiddle Atlantic -0.0062098 0.9938094 0.0216611 -0.287 0.774357
FACILITY_LOCATION_FSouth Atlantic -0.0135671 0.9865246 0.0208953 -0.649 0.516151
FACILITY_LOCATION_FEast North Central 0.0890028 1.0930837 0.0213804 4.163 3.14e-05 ***
FACILITY_LOCATION_FEast South Central 0.0774842 1.0805652 0.0248013 3.124 0.001783 **
FACILITY_LOCATION_FWest North Central 0.0502383 1.0515216 0.0244411 2.055 0.039833 *
FACILITY_LOCATION_FWest South Central 0.0131713 1.0132584 0.0258735 0.509 0.610708
FACILITY_LOCATION_FMountain 0.0366711 1.0373518 0.0271386 1.351 0.176615
FACILITY_LOCATION_FPacific -0.0309207 0.9695525 0.0226947 -1.362 0.173052
EDUCATION_F13 - 20.9% -0.0573047 0.9443063 0.0153599 -3.731 0.000191 ***
EDUCATION_F7 - 12.9% -0.1072284 0.8983205 0.0163720 -6.550 5.77e-11 ***
EDUCATION_FLess than 7% -0.2495956 0.7791158 0.0189037 -13.204 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
SURG_RAD_SEQSurg then Rad 3.7943 0.26356 3.6428 3.9520
SURG_RAD_SEQRad Alone 13.8152 0.07238 13.3157 14.3334
SURG_RAD_SEQNo Treatment 7.5536 0.13239 7.3322 7.7817
SURG_RAD_SEQOther 1.7732 0.56395 1.6495 1.9062
SURG_RAD_SEQRad before and after Surg 11.7514 0.08510 6.1129 22.5911
SURG_RAD_SEQRad then Surg 5.7658 0.17344 4.4653 7.4450
INSURANCE_FNone 2.2727 0.44000 2.1603 2.3910
INSURANCE_FMedicaid 2.7196 0.36771 2.5906 2.8549
INSURANCE_FMedicare 1.2135 0.82406 1.1844 1.2434
INSURANCE_FOther Government 1.2955 0.77192 1.1882 1.4125
INSURANCE_FUnknown NA NA NA NA
AGE 1.0554 0.94746 1.0545 1.0564
SEX_FFemale 0.7345 1.36144 0.7216 0.7477
RACE_FBlack 1.3919 0.71845 1.2910 1.5006
RACE_FOther/Unk 0.9297 1.07566 0.8689 0.9947
RACE_FAsian 1.1387 0.87818 0.9992 1.2978
INCOME_F$38,000 - $47,999 0.9710 1.02991 0.9423 1.0005
INCOME_F$48,000 - $62,999 0.9209 1.08586 0.8920 0.9508
INCOME_F$63,000 + 0.8589 1.16429 0.8283 0.8906
U_R_FUrban 0.9621 1.03939 0.9378 0.9871
U_R_FRural 0.9729 1.02789 0.9162 1.0331
FACILITY_TYPE_FComprehensive Comm Ca Program 0.9609 1.04069 0.9294 0.9934
FACILITY_TYPE_FAcademic/Research Program 0.8853 1.12953 0.8564 0.9152
FACILITY_TYPE_FIntegrated Network Ca Program 1.0047 0.99531 0.9660 1.0449
FACILITY_LOCATION_FMiddle Atlantic 0.9938 1.00623 0.9525 1.0369
FACILITY_LOCATION_FSouth Atlantic 0.9865 1.01366 0.9469 1.0278
FACILITY_LOCATION_FEast North Central 1.0931 0.91484 1.0482 1.1399
FACILITY_LOCATION_FEast South Central 1.0806 0.92544 1.0293 1.1344
FACILITY_LOCATION_FWest North Central 1.0515 0.95100 1.0023 1.1031
FACILITY_LOCATION_FWest South Central 1.0133 0.98692 0.9632 1.0660
FACILITY_LOCATION_FMountain 1.0374 0.96399 0.9836 1.0940
FACILITY_LOCATION_FPacific 0.9696 1.03140 0.9274 1.0137
EDUCATION_F13 - 20.9% 0.9443 1.05898 0.9163 0.9732
EDUCATION_F7 - 12.9% 0.8983 1.11319 0.8700 0.9276
EDUCATION_FLess than 7% 0.7791 1.28351 0.7508 0.8085
Concordance= 0.78 (se = 0.001 )
Rsquare= 0.227 (max possible= 0.996 )
Likelihood ratio test= 57605 on 34 df, p=0
Wald test = 68966 on 34 df, p=0
Score (logrank) test = 95593 on 34 df, p=0
Summary of Model
model_one %>%
tidy(., exponentiate = TRUE) %>%
select(term, estimate, conf.low, conf.high, p.value) %>%
rename(Variable = term,
Hazard_Ratio = estimate) %>%
tbl_df %>%
print(n = nrow(.))
Prediction Logistic Regression Models
Surgery
no_Ukns <- data %>%
filter(SURGERY_YN != "Ukn") %>%
droplevels() %>%
mutate(SURGERY_YN = as.logical(SURGERY_YN))
fit_surg <- glm(SURG_TF ~ AGE_F + SEX_F + RACE_F + INCOME_F + U_R_F +
FACILITY_TYPE_F + FACILITY_LOCATION_F + EDUCATION_F + EXPN_GROUP,
data = no_Ukns)
summary(fit_surg)
Call:
glm(formula = SURG_TF ~ AGE_F + SEX_F + RACE_F + INCOME_F + U_R_F +
FACILITY_TYPE_F + FACILITY_LOCATION_F + EDUCATION_F + EXPN_GROUP,
data = no_Ukns)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.99621 0.03177 0.04624 0.06075 0.23517
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 9.064e-01 3.406e-03 266.120 < 2e-16 ***
AGE_F(54,64] -8.227e-03 1.226e-03 -6.711 1.93e-11 ***
AGE_F(64,74] -1.053e-02 1.291e-03 -8.160 3.37e-16 ***
AGE_F(74,100] -2.423e-02 1.302e-03 -18.613 < 2e-16 ***
SEX_FFemale 1.387e-02 9.323e-04 14.880 < 2e-16 ***
RACE_FBlack -1.042e-01 5.556e-03 -18.750 < 2e-16 ***
RACE_FOther/Unk -2.474e-03 3.441e-03 -0.719 0.47220
RACE_FAsian -7.105e-02 8.227e-03 -8.636 < 2e-16 ***
INCOME_F$38,000 - $47,999 4.545e-03 1.811e-03 2.510 0.01206 *
INCOME_F$48,000 - $62,999 9.487e-03 1.896e-03 5.003 5.64e-07 ***
INCOME_F$63,000 + 1.235e-02 2.086e-03 5.917 3.28e-09 ***
U_R_FUrban 5.802e-03 1.448e-03 4.007 6.15e-05 ***
U_R_FRural -3.543e-05 3.525e-03 -0.010 0.99198
FACILITY_TYPE_FComprehensive Comm Ca Program 2.356e-02 1.971e-03 11.953 < 2e-16 ***
FACILITY_TYPE_FAcademic/Research Program 3.881e-02 1.941e-03 20.001 < 2e-16 ***
FACILITY_TYPE_FIntegrated Network Ca Program 2.502e-02 2.272e-03 11.010 < 2e-16 ***
FACILITY_LOCATION_FMiddle Atlantic -3.576e-03 2.233e-03 -1.602 0.10926
FACILITY_LOCATION_FSouth Atlantic -5.746e-03 2.202e-03 -2.609 0.00907 **
FACILITY_LOCATION_FEast North Central -5.163e-03 2.236e-03 -2.309 0.02093 *
FACILITY_LOCATION_FEast South Central -3.720e-03 2.688e-03 -1.384 0.16642
FACILITY_LOCATION_FWest North Central -1.009e-02 2.510e-03 -4.020 5.82e-05 ***
FACILITY_LOCATION_FWest South Central -2.529e-02 2.816e-03 -8.981 < 2e-16 ***
FACILITY_LOCATION_FMountain -1.262e-02 2.824e-03 -4.468 7.89e-06 ***
FACILITY_LOCATION_FPacific -1.297e-02 2.374e-03 -5.463 4.70e-08 ***
EDUCATION_F13 - 20.9% 8.091e-03 1.812e-03 4.466 7.98e-06 ***
EDUCATION_F7 - 12.9% 1.294e-02 1.896e-03 6.823 8.92e-12 ***
EDUCATION_FLess than 7% 1.846e-02 2.107e-03 8.762 < 2e-16 ***
EXPN_GROUPPre-Expansion 6.361e-03 1.331e-03 4.778 1.77e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 0.04678046)
Null deviance: 10550 on 223226 degrees of freedom
Residual deviance: 10441 on 223199 degrees of freedom
(45352 observations deleted due to missingness)
AIC: -50065
Number of Fisher Scoring iterations: 2
exp(cbind("Odds ratio" = coef(fit_surg), confint.default(fit_surg, level = 0.95)))
Odds ratio 2.5 % 97.5 %
(Intercept) 2.4752849 2.4588167 2.4918634
AGE_F(54,64] 0.9918070 0.9894270 0.9941927
AGE_F(64,74] 0.9895242 0.9870243 0.9920304
AGE_F(74,100] 0.9760624 0.9735754 0.9785558
SEX_FFemale 1.0139692 1.0121182 1.0158237
RACE_FBlack 0.9010737 0.8913151 0.9109392
RACE_FOther/Unk 0.9975292 0.9908240 1.0042798
RACE_FAsian 0.9314155 0.9165171 0.9465560
INCOME_F$38,000 - $47,999 1.0045557 1.0009972 1.0081268
INCOME_F$48,000 - $62,999 1.0095318 1.0057870 1.0132906
INCOME_F$63,000 + 1.0124221 1.0082904 1.0165707
U_R_FUrban 1.0058191 1.0029685 1.0086778
U_R_FRural 0.9999646 0.9930806 1.0068963
FACILITY_TYPE_FComprehensive Comm Ca Program 1.0238422 1.0198942 1.0278055
FACILITY_TYPE_FAcademic/Research Program 1.0395763 1.0356298 1.0435378
FACILITY_TYPE_FIntegrated Network Ca Program 1.0253326 1.0207765 1.0299091
FACILITY_LOCATION_FMiddle Atlantic 0.9964306 0.9920797 1.0008006
FACILITY_LOCATION_FSouth Atlantic 0.9942702 0.9899881 0.9985707
FACILITY_LOCATION_FEast North Central 0.9948500 0.9904999 0.9992192
FACILITY_LOCATION_FEast South Central 0.9962868 0.9910511 1.0015502
FACILITY_LOCATION_FWest North Central 0.9899593 0.9851006 0.9948420
FACILITY_LOCATION_FWest South Central 0.9750278 0.9696613 0.9804239
FACILITY_LOCATION_FMountain 0.9874597 0.9820087 0.9929409
FACILITY_LOCATION_FPacific 0.9871163 0.9825342 0.9917197
EDUCATION_F13 - 20.9% 1.0081233 1.0045500 1.0117094
EDUCATION_F7 - 12.9% 1.0130203 1.0092631 1.0167916
EDUCATION_FLess than 7% 1.0186333 1.0144354 1.0228485
EXPN_GROUPPre-Expansion 1.0063815 1.0037589 1.0090108
LS0tCnRpdGxlOiAiTWVsYW5vbWEgQUNBIEFuYWx5c2lzIC0gQSBSZXZpZXcgb2YgdGhlIE5DREIiCmF1dGhvcjogIlJhbWllIEZhdGh5IgpkYXRlOiAiMTAvMjQvMjAxOSIKb3V0cHV0OgogIGh0bWxfbm90ZWJvb2s6CiAgICB0aGVtZTogdW5pdGVkCiAgICB0b2M6IHllcwogICAgdG9jX2Zsb2F0OiB5ZXMKICBodG1sX2RvY3VtZW50OgogICAgdG9jOiB5ZXMKLS0tCiAKCgpgYGB7ciBjaHVuazEsIGVjaG89RkFMU0UsIHdhcm5pbmc9RkFMU0UsIG1lc3NhZ2U9RkFMU0V9CgojIHF1ZXN0aW9uczogCiMjICBkbyB3ZSB3YW50IHRvIGluY2x1ZGUgcGF0aWVudHMgPDE4eW8/CgpsaWJyYXJ5KCJnZ3Bsb3QyIikKbGlicmFyeSgiZHBseXIiKQpsaWJyYXJ5KCJ0aWR5ciIpCmxpYnJhcnkoImtuaXRyIikKbGlicmFyeSgidGFibGVvbmUiKQpsaWJyYXJ5KCJmb3JjYXRzIikKbGlicmFyeSgic3Vydml2YWwiKQpsaWJyYXJ5KCJucHN1cnYiKQpsaWJyYXJ5KCJicm9vbSIpCmxpYnJhcnkoInRpYmJsZSIpCmxpYnJhcnkoInJlYWRyIikKbGlicmFyeSgic3Vydm1pbmVyIikKbGlicmFyeSgic3RyaW5nciIpCgprbml0cjo6b3B0c19jaHVuayRzZXQoZWNobz1UUlVFLCB3YXJuaW5nPUZBTFNFLCBtZXNzYWdlPVRSVUUpCiclIWluJScgPC0gZnVuY3Rpb24oeCx5KSEoJyVpbiUnKHgseSkpCmBgYAoKYGBge3J9CnBfdGFibGUgPC0gZnVuY3Rpb24odGFiX2RhdGEsIC4uLikgewogIHRhYl9kYXRhXzIgPC0gZGVwYXJzZShzdWJzdGl0dXRlKHRhYl9kYXRhKSkKICAKICB0YWJsZV9wIDwtIGRvLmNhbGwoQ3JlYXRlVGFibGVPbmUsIAogICAgICAgICAgICAgICAgICAgICBsaXN0KGRhdGEgPSBhcy5uYW1lKHRhYl9kYXRhXzIpLCBpbmNsdWRlTkEgPSBUUlVFLCAuLi4pKQogIHRhYmxlX3Bfb3V0IDwtIHByaW50KHRhYmxlX3AsCiAgICAgICAgICAgICAgICAgICAgICAgc2hvd0FsbExldmVscyA9IFRSVUUsCiAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRUb2dnbGUgPSBGQUxTRSkKICBrYWJsZSh0YWJsZV9wX291dCwKICAgICAgICBhbGlnbiA9ICJjIikKfQpgYGAKCmBgYHtyfQp1bmlfdmFyIDwtIGZ1bmN0aW9uKHRlc3RfdmFyLCBkYXRhX2ltcCkgewoKICAgICAgICAgICAgICAgIAogICAgICAgIGNhdCgiX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyIpCiAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgY2F0KCIgICBcbiMjIiwgdGVzdF92YXIpCiAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgY2F0KCJfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fIikKICAgICAgICBjYXQoIlxuIikKCiAgICAgICAgCiAgICAgICAgZiA8LSBhcy5mb3JtdWxhKHBhc3RlKCJTdXJ2KERYX0xBU1RDT05UQUNUX0RFQVRIX01PTlRIUywgUFVGX1ZJVEFMX1NUQVRVUyA9PSAwKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzLm5hbWUodGVzdF92YXIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXAgPSAiIH4gIiApKQogICAgICAgIAogICAgICAgIGRhdGFfaW1wXzIgPC0gZGVwYXJzZShzdWJzdGl0dXRlKGRhdGFfaW1wKSkKCiAgICAgICAga21fZml0IDwtIGRvLmNhbGwoInN1cnZmaXQiLCBsaXN0KGZvcm11bGEgPSBmLCBkYXRhID0gYXMubmFtZShkYXRhX2ltcF8yKSkpCgogICAgICAgIHByaW50KGttX2ZpdCkKICAgICAgICBjYXQoIlxuIikKCiAgICAgICAgcHJpbnQoc3VtbWFyeShrbV9maXQsIHRpbWVzID0gYygxMiwgMjQsIDM2LCA0OCwgNjAsIDEyMCkpKQogICAgICAgIGNhdCgiXG4iKQoKCiAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgY2F0KCIgICBcbiMjIFVuaXZhcmlhYmxlIENveCBQcm9wb3J0aW9uYWwgSGF6YXJkIE1vZGVsIGZvcjogIiwgdGVzdF92YXIpCiAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgY2F0KCJcbiIpCgoKICAgICAgICBuX2xldmVscyA8LSBubGV2ZWxzKGRhdGFfaW1wW1t0ZXN0X3Zhcl1dKQoKICAgICAgICBpZihuX2xldmVscyA9PSAxKXsKICAgICAgICAgICAgICAgIHByaW50KCJPbmx5IG9uZSBsZXZlbCwgbm8gQ294IG1vZGVsIHBlcmZvcm1lZCIpCiAgICAgICAgICAgICAgICBjYXQoIlxuIikKCiAgICAgICAgfSBlbHNlIHsKCgogICAgICAgICAgICAgICAgY294X2ZpdCA8LSBkby5jYWxsKCJjb3hwaCIsIGxpc3QoZm9ybXVsYSA9IGYsIGRhdGEgPSBhcy5uYW1lKGRhdGFfaW1wXzIpKSkKCiAgICAgICAgICAgICAgICBwcmludChzdW1tYXJ5KGNveF9maXQpKQogICAgICAgICAgICAgICAgY2F0KCJcbiIpCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIGRvLmNhbGwoImdnZm9yZXN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QobW9kZWwgPSBjb3hfZml0LCBkYXRhID0gYXMubmFtZShkYXRhX2ltcF8yKSkpCgoKICAgICAgICB9CgogICAgICAgIGNhdCgiXG4iKQogICAgICAgIGNhdCgiXG4iKQogICAgICAgIGNhdCgiXG4iKQogICAgICAgIGNhdCgiICAgXG4jIyBVbmFkanVzdGVkIEthcGxhbiBNZWllciBPdmVyYWxsIFN1cnZpdmFsIEN1cnZlIGZvcjogIiwgdGVzdF92YXIpCgoKICAgICAgICBwIDwtIGRvLmNhbGwoImdnc3VydnBsb3QiLAogICAgICAgICAgICAgICAgICAgICBsaXN0KGZpdCA9IGttX2ZpdCwgZGF0YSA9IGFzLm5hbWUoZGF0YV9pbXBfMiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFsZXR0ZSA9ICJqY28iLCBjZW5zb3IgPSBGQUxTRSwgbGVnZW5kID0gInJpZ2h0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldHlwZSA9ICJzdHJhdGEiLCB4bGFiID0gIlRpbWUgKE1vbnRocykiKSkKCiAgICAgICAgcHJpbnQocCkKCn0KCmBgYAoKCmBgYHtyIGNodW5rMiwgY2FjaGU9VFJVRSwgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRSwgcmVzdWx0cz0naGlkZSd9CmNvbC53aWR0aCA8LSBjKDM3LCAxMCwgMSwgMSwgMywgMSwgMiwgMSwgMiwgMSwgMSwgMSwgMSwgMSwgMSwgOCwgMiwgMiwgMiwgNCwgNCwgMSwgNCwgMSwgMSwKICAgICAgICAgICAgICAgMSwgMywgMiwgMiwgOCwgMiwgNSwgNSwgNSwgNCwgNSwgNSwgNSw0LCAyLCAxLCAyLCAxLCAzLCAxLCAxLCAxLCAxLCAxLCAxLCAzLAogICAgICAgICAgICAgICAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCA2LCA4LAogICAgICAgICAgICAgICA4LCA4LCAyLCAxLCAxLCAxLCAxLCA4LCAxLCAxLCA4LCAxLCAxLCAyLCAyLCA1LCAyLCA1LCAzLCAxLCAzLCAxLCA4LCA4LCAyLCA4LAogICAgICAgICAgICAgICAyLCA4LCAyLCAyLCAxLCA4LCAxLCAxLCAxLCAxLCAxLCA4LCAxLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAyLCAxLCAzLCAxLCAxLAogICAgICAgICAgICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxKQoKY29sLm5hbWVzLmFiciA8LSBjKCJQVUZfQ0FTRV9JRCIsICJQVUZfRkFDSUxJVFlfSUQiLCAiRkFDSUxJVFlfVFlQRV9DRCIsICJGQUNJTElUWV9MT0NBVElPTl9DRCIsCiAgICAgICAgICAgICAgICAgICAiQUdFIiwgIlNFWCIsICJSQUNFIiwgIlNQQU5JU0hfSElTUEFOSUNfT1JJR0lOIiwgIklOU1VSQU5DRV9TVEFUVVMiLAogICAgICAgICAgICAgICAgICAgIk1FRF9JTkNfUVVBUl8wMCIsICJOT19IU0RfUVVBUl8wMCIsICJVUl9DRF8wMyIsICJNRURfSU5DX1FVQVJfMTIiLCAiTk9fSFNEX1FVQVJfMTIiLAogICAgICAgICAgICAgICAgICAgIlVSX0NEXzEzIiwgIkNST1dGTFkiLCAiQ0RDQ19UT1RBTF9CRVNUIiwgIlNFUVVFTkNFX05VTUJFUiIsICJDTEFTU19PRl9DQVNFIiwKICAgICAgICAgICAgICAgICAgICJZRUFSX09GX0RJQUdOT1NJUyIsICJQUklNQVJZX1NJVEUiLCAiTEFURVJBTElUWSIsICJISVNUT0xPR1kiLCAiQkVIQVZJT1IiLCAiR1JBREUiLAogICAgICAgICAgICAgICAgICAgIkRJQUdOT1NUSUNfQ09ORklSTUFUSU9OIiwgIlRVTU9SX1NJWkUiLCAiUkVHSU9OQUxfTk9ERVNfUE9TSVRJVkUiLAogICAgICAgICAgICAgICAgICAgIlJFR0lPTkFMX05PREVTX0VYQU1JTkVEIiwgIkRYX1NUQUdJTkdfUFJPQ19EQVlTIiwgIlJYX1NVTU1fRFhTVEdfUFJPQyIsICJUTk1fQ0xJTl9UIiwKICAgICAgICAgICAgICAgICAgICJUTk1fQ0xJTl9OIiwgIlROTV9DTElOX00iLCAiVE5NX0NMSU5fU1RBR0VfR1JPVVAiLCAiVE5NX1BBVEhfVCIsICJUTk1fUEFUSF9OIiwgIlROTV9QQVRIX00iLAogICAgICAgICAgICAgICAgICAgIlROTV9QQVRIX1NUQUdFX0dST1VQIiwgIlROTV9FRElUSU9OX05VTUJFUiIsICJBTkFMWVRJQ19TVEFHRV9HUk9VUCIsICJDU19NRVRTX0FUX0RYIiwKICAgICAgICAgICAgICAgICAgICJDU19NRVRTX0VWQUwiLCAiQ1NfRVhURU5TSU9OIiwgIkNTX1RVTU9SX1NJWkVFWFRfRVZBTCIsICJDU19NRVRTX0RYX0JPTkUiLCAiQ1NfTUVUU19EWF9CUkFJTiIsCiAgICAgICAgICAgICAgICAgICAiQ1NfTUVUU19EWF9MSVZFUiIsICJDU19NRVRTX0RYX0xVTkciLCAiTFlNUEhfVkFTQ1VMQVJfSU5WQVNJT04iLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8xIiwKICAgICAgICAgICAgICAgICAgICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzIiLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8zIiwgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfNCIsCiAgICAgICAgICAgICAgICAgICAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl81IiwgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfNiIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzciLAogICAgICAgICAgICAgICAgICAgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfOCIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzkiLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8xMCIsCiAgICAgICAgICAgICAgICAgICAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8xMSIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzEyIiwgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfMTMiLAogICAgICAgICAgICAgICAgICAgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfMTQiLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8xNSIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzE2IiwKICAgICAgICAgICAgICAgICAgICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzE3IiwgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfMTgiLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8xOSIsCiAgICAgICAgICAgICAgICAgICAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8yMCIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzIxIiwgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfMjIiLAogICAgICAgICAgICAgICAgICAgIkNTX1NJVEVTUEVDSUZJQ19GQUNUT1JfMjMiLCAiQ1NfU0lURVNQRUNJRklDX0ZBQ1RPUl8yNCIsICJDU19TSVRFU1BFQ0lGSUNfRkFDVE9SXzI1IiwKICAgICAgICAgICAgICAgICAgICJDU19WRVJTSU9OX0xBVEVTVCIsICJEWF9SWF9TVEFSVEVEX0RBWVMiLCAiRFhfU1VSR19TVEFSVEVEX0RBWVMiLCAiRFhfREVGU1VSR19TVEFSVEVEX0RBWVMiLAogICAgICAgICAgICAgICAgICAgIlJYX1NVTU1fU1VSR19QUklNX1NJVEUiLCAiUlhfSE9TUF9TVVJHX0FQUFJfMjAxMCIsICJSWF9TVU1NX1NVUkdJQ0FMX01BUkdJTlMiLAogICAgICAgICAgICAgICAgICAgIlJYX1NVTU1fU0NPUEVfUkVHX0xOX1NVUiIsICJSWF9TVU1NX1NVUkdfT1RIX1JFR0RJUyIsICJTVVJHX0RJU0NIQVJHRV9EQVlTIiwgIlJFQURNX0hPU1BfMzBfREFZUyIsCiAgICAgICAgICAgICAgICAgICAiUkVBU09OX0ZPUl9OT19TVVJHRVJZIiwgIkRYX1JBRF9TVEFSVEVEX0RBWVMiLCAiUlhfU1VNTV9SQURJQVRJT04iLCAiUkFEX0xPQ0FUSU9OX09GX1JYIiwKICAgICAgICAgICAgICAgICAgICJSQURfVFJFQVRfVk9MIiwgIlJBRF9SRUdJT05BTF9SWF9NT0RBTElUWSIsICJSQURfUkVHSU9OQUxfRE9TRV9DR1kiLCAiUkFEX0JPT1NUX1JYX01PREFMSVRZIiwKICAgICAgICAgICAgICAgICAgICJSQURfQk9PU1RfRE9TRV9DR1kiLCAiUkFEX05VTV9UUkVBVF9WT0wiLCAiUlhfU1VNTV9TVVJHUkFEX1NFUSIsICJSQURfRUxBUFNFRF9SWF9EQVlTIiwKICAgICAgICAgICAgICAgICAgICJSRUFTT05fRk9SX05PX1JBRElBVElPTiIsICJEWF9TWVNURU1JQ19TVEFSVEVEX0RBWVMiLCAiRFhfQ0hFTU9fU1RBUlRFRF9EQVlTIiwgIlJYX1NVTU1fQ0hFTU8iLAogICAgICAgICAgICAgICAgICAgIkRYX0hPUk1PTkVfU1RBUlRFRF9EQVlTIiwgIlJYX1NVTU1fSE9STU9ORSIsICJEWF9JTU1VTk9fU1RBUlRFRF9EQVlTIiwgIlJYX1NVTU1fSU1NVU5PVEhFUkFQWSIsCiAgICAgICAgICAgICAgICAgICAiUlhfU1VNTV9UUk5TUExOVF9FTkRPIiwgIlJYX1NVTU1fU1lTVEVNSUNfU1VSX1NFUSIsICJEWF9PVEhFUl9TVEFSVEVEX0RBWVMiLCAiUlhfU1VNTV9PVEhFUiIsCiAgICAgICAgICAgICAgICAgICAiUEFMTElBVElWRV9DQVJFIiwgIlJYX1NVTU1fVFJFQVRNRU5UX1NUQVRVUyIsICJQVUZfMzBfREFZX01PUlRfQ0QiLCAiUFVGXzkwX0RBWV9NT1JUX0NEIiwKICAgICAgICAgICAgICAgICAgICJEWF9MQVNUQ09OVEFDVF9ERUFUSF9NT05USFMiLCAiUFVGX1ZJVEFMX1NUQVRVUyIsICJSWF9IT1NQX1NVUkdfUFJJTV9TSVRFIiwgIlJYX0hPU1BfQ0hFTU8iLAogICAgICAgICAgICAgICAgICAgIlJYX0hPU1BfSU1NVU5PVEhFUkFQWSIsICJSWF9IT1NQX0hPUk1PTkUiLCAiUlhfSE9TUF9PVEhFUiIsICJQVUZfTVVMVF9TT1VSQ0UiLCAiUkVGRVJFTkNFX0RBVEVfRkxBRyIsCiAgICAgICAgICAgICAgICAgICAiUlhfU1VNTV9TQ09QRV9SRUdfTE5fMjAxMiIsICJSWF9IT1NQX0RYU1RHX1BST0MiLCAiUEFMTElBVElWRV9DQVJFX0hPU1AiLCAiVFVNT1JfU0laRV9TVU1NQVJZIiwKICAgICAgICAgICAgICAgICAgICJNRVRTX0FUX0RYX09USEVSIiwgIk1FVFNfQVRfRFhfRElTVEFOVF9MTiIsICJNRVRTX0FUX0RYX0JPTkUiLCAiTUVUU19BVF9EWF9CUkFJTiIsCiAgICAgICAgICAgICAgICAgICAiTUVUU19BVF9EWF9MSVZFUiIsICJNRVRTX0FUX0RYX0xVTkciLCAiTk9fSFNEX1FVQVJfMTYiLCAiTUVEX0lOQ19RVUFSXzE2IiwgIk1FRElDQUlEX0VYUE5fQ09ERSIpCgoKCiNSZWFkIGluIGRhdGEgZm9yIGVhY2ggc3Vic2l0ZQpsaXAgPC0gcmVhZF9md2YoJ05DREJQVUZfTGlwLjMuMjAxNi4wLmRhdCcsIAogICAgICAgICAgICAgICAgICAgICAgIGZ3Zl93aWR0aHMoY29sLndpZHRoLCBjb2xfbmFtZXMgPSBjb2wubmFtZXMuYWJyKSwKICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSBjb2xzKC5kZWZhdWx0ID0gY29sX2NoYXJhY3RlcigpKSkKCm1lbGFub21hIDwtIHJlYWRfZndmKCdOQ0RCUFVGX01lbGFub21hLjMuMjAxNi4wLmRhdCcsIAogICAgICAgICAgICAgICAgICAgICAgIGZ3Zl93aWR0aHMoY29sLndpZHRoLCBjb2xfbmFtZXMgPSBjb2wubmFtZXMuYWJyKSwKICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSBjb2xzKC5kZWZhdWx0ID0gY29sX2NoYXJhY3RlcigpKSkKICAgICAgICAgICAgICAgICAgICAgICAKc2tpbiA8LSByZWFkX2Z3ZignTkNEQlBVRl9PdFNraW4uMy4yMDE2LjAuZGF0JywgCiAgICAgICAgICAgICAgICAgICAgICAgZndmX3dpZHRocyhjb2wud2lkdGgsIGNvbF9uYW1lcyA9IGNvbC5uYW1lcy5hYnIpLAogICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlcyA9IGNvbHMoLmRlZmF1bHQgPSBjb2xfY2hhcmFjdGVyKCkpKQoKaG9kZ2V4dHIgPC0gcmVhZF9md2YoJ05DREJQVUZfSG9kZ0V4dHIuMy4yMDE2LjAuZGF0JywgCiAgICAgICAgICAgICAgICAgICAgICAgZndmX3dpZHRocyhjb2wud2lkdGgsIGNvbF9uYW1lcyA9IGNvbC5uYW1lcy5hYnIpLAogICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlcyA9IGNvbHMoLmRlZmF1bHQgPSBjb2xfY2hhcmFjdGVyKCkpKQoKaG9kZ25kYWwgPC0gcmVhZF9md2YoJ05DREJQVUZfSG9kZ05kYWwuMy4yMDE2LjAuZGF0JywgCiAgICAgICAgICAgICAgICAgICAgICAgZndmX3dpZHRocyhjb2wud2lkdGgsIGNvbF9uYW1lcyA9IGNvbC5uYW1lcy5hYnIpLAogICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlcyA9IGNvbHMoLmRlZmF1bHQgPSBjb2xfY2hhcmFjdGVyKCkpKQoKTkhMbmRhbCA8LSByZWFkX2Z3ZignTkNEQlBVRl9OSExOZGFsLjMuMjAxNi4wLmRhdCcsIAogICAgICAgICAgICAgICAgICAgICAgIGZ3Zl93aWR0aHMoY29sLndpZHRoLCBjb2xfbmFtZXMgPSBjb2wubmFtZXMuYWJyKSwKICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSBjb2xzKC5kZWZhdWx0ID0gY29sX2NoYXJhY3RlcigpKSkKCmJyZWFzdCA8LSAgcmVhZF9md2YoJ05DREJQVUZfQnJlYXN0LjMuMjAxNi4wLmRhdCcsIAogICAgICAgICAgICAgICAgICAgICAgIGZ3Zl93aWR0aHMoY29sLndpZHRoLCBjb2xfbmFtZXMgPSBjb2wubmFtZXMuYWJyKSwKICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSBjb2xzKC5kZWZhdWx0ID0gY29sX2NoYXJhY3RlcigpKSkKCnZ1bHZhIDwtICByZWFkX2Z3ZignTkNEQlBVRl9WdWx2YS4zLjIwMTYuMC5kYXQnLCAKICAgICAgICAgICAgICAgICAgICAgICBmd2Zfd2lkdGhzKGNvbC53aWR0aCwgY29sX25hbWVzID0gY29sLm5hbWVzLmFiciksCiAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGVzID0gY29scyguZGVmYXVsdCA9IGNvbF9jaGFyYWN0ZXIoKSkpCgp2YWdpbmEgPC0gIHJlYWRfZndmKCdOQ0RCUFVGX1ZhZ2luYS4zLjIwMTYuMC5kYXQnLCAKICAgICAgICAgICAgICAgICAgICAgICBmd2Zfd2lkdGhzKGNvbC53aWR0aCwgY29sX25hbWVzID0gY29sLm5hbWVzLmFiciksCiAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGVzID0gY29scyguZGVmYXVsdCA9IGNvbF9jaGFyYWN0ZXIoKSkpCgpwZW5pcyA8LSAgcmVhZF9md2YoJ05DREJQVUZfUGVuaXMuMy4yMDE2LjAuZGF0JywgCiAgICAgICAgICAgICAgICAgICAgICAgZndmX3dpZHRocyhjb2wud2lkdGgsIGNvbF9uYW1lcyA9IGNvbC5uYW1lcy5hYnIpLAogICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlcyA9IGNvbHMoLmRlZmF1bHQgPSBjb2xfY2hhcmFjdGVyKCkpKQoKI0NvbWJpbmUgZGF0YSBmb3IgYWxsIHN1YnNpdGVzCmRhdCA8LSBiaW5kX3Jvd3MobGlwLCBtZWxhbm9tYSwgc2tpbiwgaG9kZ2V4dHIsIGhvZGduZGFsLCBOSExuZGFsLCBicmVhc3QsIAogICAgICAgICAgICAgICAgIHZ1bHZhLCB2YWdpbmEsIHBlbmlzKQoKcm0obGlwLCBtZWxhbm9tYSwgc2tpbiwgaG9kZ2V4dHIsIGhvZGduZGFsLCBOSExuZGFsLCBicmVhc3QsIHZ1bHZhLCB2YWdpbmEsIHBlbmlzKQoKcHJpbV9zaXRlX3RleHQgPC0gZGF0YV9mcmFtZShQUklNQVJZX1NJVEUgPSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2xpcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYygiQzAwMCIsICJDMDAxIiwgIkMwMDIiLCAiQzAwMyIsICJDMDA0IiwgIkMwMDUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQzAwNiIsICJDMDA4IiwgIkMwMDkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3NraW4vbWVsYW5vbWEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkM0NDAiLCAiQzQ0MSIsICJDNDQyIiwgIkM0NDMiLCAiQzQ0NCIsICJDNDQ1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkM0NDYiLCAiQzQ0NyIsICJDNDQ4IiwgIkM0NDkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2JyZWFzdCAtIG5pcHBsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQzUwMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjdmFnaW5hL3Z1bHZhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDNTEwIiwgIkM1MTEiLCAiQzUxMiIsICJDNTE4IiwgIkM1MTkiLCAiQzUyOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjcGVuaXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkM2MDAiLCAiQzYwMSIsICJDNjAyIiwgIkM2MDgiLCAiQzYwOSIsICJDNjM5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI05ITCBzaXRlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQzA5OCIsICJDMDk5IiwgIkMxMTEiLCAiQzE0MiIsICJDMzc5IiwgIkM0MjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQzc3MCIsIkM3NzEiLCJDNzcyIiwiQzc3MyIsIkM3NzQiLCAiQzc3NSIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQzc3OCIsIkM3NzkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksICAgICAgICAgICAgICAgIApTSVRFX1RFWFQgPSBjKAogICNsaXAgCiJDMDAuMCBFeHRlcm5hbCBMaXA6IFVwcGVyIE5PUyIsCiJDMDAuMSBFeHRlcm5hbCBMaXA6IExvd2VyIE5PUyIsCiJDMDAuMiAgRXh0ZXJuYWwgTGlwOiBOT1MiLAoiQzAwLjMgTGlwOiBVcHBlciBNdWNvc2EiLCAKIkMwMC40IExpcDogTG93ZXIgTXVjb3NhIiwgCiJDMDAuNSBMaXA6IE11Y29zYSBOT1MiLAoiQzAwLjYgTGlwOiBDb21taXNzdXJlIiwgCiJDMDAuOCBMaXA6IE92ZXJsYXBwaW5nIiwgCiJDMDAuOSBMaXAsIE5PUyIsCgoKICNza2luCiJDNDQuMCBTa2luIG9mIGxpcCwgTk9TIiwKIkM0NC4xIEV5ZWxpZCIsCiJDNDQuMiBFeHRlcm5hbCBlYXIiLAoiQzQ0LjMgU2tpbiBvZiBlYXIgYW5kIHVuc3BlY2lmaWVkIHBhcnRzIG9mIGZhY2UiLAoiQzQ0LjQgU2tpbiBvZiBzY2FscCBhbmQgbmVjayIsCiJDNDQuNSBTa2luIG9mIHRydW5rIiwKIkM0NC42IFNraW4gb2YgdXBwZXIgbGltYiBhbmQgc2hvdWxkZXIiLAoiQzQ0LjcgU2tpbiBvZiBsb3dlciBsaW1iIGFuZCBoaXAiLAoiQzQ0LjggT3ZlcmxhcHBpbmcgbGVzaW9uIG9mIHNraW4iLAoiQzQ0LjkgU2tpbiwgTk9TIiwgCgojYnJlYXN0CiJDNTAuMCBOaXBwbGUiLAoKI3Z1bHZhL3ZhZ2luYQoiQzUxLjAgTGFiaXVtIG1hanVzIiwKIkM1MS4xIExhYml1bSBtaW51cyIsCiJDNTEuMiBDbGl0b3JpcyIsCiJDNTEuOCBPdmVybGFwcGluZyBsZXNpb24gb2YgdnVsdmEiLAoiQzUxLjkgVnVsdmEsIE5PUyIsCiJDNTIuOSBWYWdpbmEsIE5PUyIsCgojcGVuaXMKIkM2MC4wIFByZXB1Y2UiLAoiQzYwLjEgR2xhbnMgcGVuaXMiLAoiQzYwLjIgQm9keSBvZiBwZW5pcyIsCiJDNjAuOCBPdmVybGFwcGluZyBsZXNpb24gb2YgcGVuaXMiLAoiQzYwLjkgUGVuaXMiLAoiQzYzLjIgU2Nyb3R1bSwgTk9TIiwKCiNOSEwKICAiQzA5LjggVG9uc2lsOiBPdmVybGFwcGluZyIsCiAgIkMwOS45ID0gVG9uc2lsIE5PUyIsCiAgIkMxMS4xIE5hc29waGFyeW54OiBQb3N0ZXIgV2FsbCIsIAogICJDMTQuMiBXYWxkZXllciBSaW5nIiwKICAiQzM3LjkgVGh5bXVzIiwKICAiQzQyLjIgU3BsZWVuIiwKICAiQzc3LjAgTHltcGggTm9kZXM6IEhlYWRGYWNlTmVjayIsCiAgIkM3Ny4xIEludHJhdGhvcmFjaWMgTHltcGggTm9kZXMiLAogICJDNzcuMiBJbnRyYS1hYmRvbWluYWwgTHltcGhOb2RlcyIsCiAgIkM3Ny4zIEx5bXBoIE5vZGVzIG9mIGF4aWxsYSBvciBhcm0gIiwKICAiQzc3LjQgTHltcGggTm9kZXM6IExlZyIsCiAgIkM3Ny41IFBlbHZpYyBMeW1waCBOb2RlcyIsCiAgIkM3Ny44IEx5bXBoIE5vZGVzOiBtdWx0aXBsZSByZWdpb24iLAogICJDNzcuOSBMeW1waCBOb2RlIE5PUyIpKQoKCmRhdCA8LSBtZXJnZShkYXQsIHByaW1fc2l0ZV90ZXh0LCBieSA9ICJQUklNQVJZX1NJVEUiLCBhbGwueCA9IFRSVUUpIAogCnJtKHByaW1fc2l0ZV90ZXh0KQoKIyBjb252ZXJ0IG51bWVyaWMgdmFyaWFibGVzIGZyb20gY2hhcmFjdGVyIGNsYXNzIHRvIG51bWVyaWMgY2xhc3MKbnVtX3ZhcnMgPC0gYygiQUdFIiwgIkNST1dGTFkiLCAiVFVNT1JfU0laRSIsICJEWF9TVEFHSU5HX1BST0NfREFZUyIsICJEWF9SWF9TVEFSVEVEX0RBWVMiLCAiRFhfU1VSR19TVEFSVEVEX0RBWVMiLAogICAgICAgICAgICAgICJEWF9ERUZTVVJHX1NUQVJURURfREFZUyIsICJTVVJHX0RJU0NIQVJHRV9EQVlTIiwgIkRYX1JBRF9TVEFSVEVEX0RBWVMiLCAgIlJBRF9SRUdJT05BTF9ET1NFX0NHWSIsCiAgICAgICAgICAgICAgIlJBRF9CT09TVF9ET1NFX0NHWSIsICJSQURfRUxBUFNFRF9SWF9EQVlTIiwgIkRYX1NZU1RFTUlDX1NUQVJURURfREFZUyIsICJEWF9DSEVNT19TVEFSVEVEX0RBWVMiLCAKICAgICAgICAgICAgICAiRFhfSE9STU9ORV9TVEFSVEVEX0RBWVMiLCAiRFhfT1RIRVJfU1RBUlRFRF9EQVlTIiwgIkRYX0xBU1RDT05UQUNUX0RFQVRIX01PTlRIUyIsCiAgICAgICAgICAgICAgIlJBRF9OVU1fVFJFQVRfVk9MIikKCmRhdFtudW1fdmFyc10gPC0gbGFwcGx5KGRhdFtudW1fdmFyc10sIGFzLm51bWVyaWMpCgoKIyBjb252ZXJ0IGZhY3RvciB2YXJpYWJsZXMgZnJvbSBjaGFyYWN0ZXIgY2xhc3MgdG8gZmFjdG9yIGNsYXNzCnZhcnMgPC0gbmFtZXMoZGF0KQpmYWN0X3ZhcnMgPC0gdmFyc1shKHZhcnMgJWluJSBudW1fdmFycyldICMgYmFzaWNhbGx5IGFsbCBvZiB0aGUgbm9uLW51bWVyaWNzCgpkYXRbZmFjdF92YXJzXSA8LSBsYXBwbHkoZGF0W2ZhY3RfdmFyc10sIGFzLmNoYXJhY3RlcikKZGF0W2ZhY3RfdmFyc10gPC0gbGFwcGx5KGRhdFtmYWN0X3ZhcnNdLCBhcy5mYWN0b3IpCgpkYXQgPC0gZGF0ICU+JQogICAgICAgIG11dGF0ZShGQUNJTElUWV9UWVBFX0YgPSBmY3RfcmVjb2RlKEZBQ0lMSVRZX1RZUEVfQ0QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNvbW11bml0eSBDYW5jZXIgUHJvZ3JhbSIgPSAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNvbXByZWhlbnNpdmUgQ29tbSBDYSBQcm9ncmFtIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQWNhZGVtaWMvUmVzZWFyY2ggUHJvZ3JhbSIgPSAiMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkludGVncmF0ZWQgTmV0d29yayBDYSBQcm9ncmFtIiA9ICI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT3RoZXIiID0gIjkiKSkgJT4lCiAgICAgICAgbXV0YXRlKEZBQ0lMSVRZX0xPQ0FUSU9OX0YgPSBmY3RfcmVjb2RlKEZBQ0lMSVRZX0xPQ0FUSU9OX0NELAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOZXcgRW5nbGFuZCIgPSAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1pZGRsZSBBdGxhbnRpYyIgPSAiMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNvdXRoIEF0bGFudGljIiA9ICIzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRWFzdCBOb3J0aCBDZW50cmFsIiA9ICI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRWFzdCBTb3V0aCBDZW50cmFsIiA9ICI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiV2VzdCBOb3J0aCBDZW50cmFsIiA9ICI2IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiV2VzdCBTb3V0aCBDZW50cmFsIiA9ICI3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTW91bnRhaW4iID0gIjgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQYWNpZmljIiA9ICI5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3V0IG9mIFVTIiA9ICIwIikpICU+JQogICAgICAgIG11dGF0ZShGQUNJTElUWV9HRU9HUkFQSFkgPSBmY3RfY29sbGFwc2UoRkFDSUxJVFlfTE9DQVRJT05fQ0QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm9ydGhlYXN0IiA9IGMoIjEiLCAiMiIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNvdXRoIiA9IGMoIjMiLCAiNyIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1pZHdlc3QiID0gYygiNCIsICI1IiwgIjYiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXZXN0IiA9IGMoIjgiLCAiOSIpKSkgJT4lCiAgICAgICAgbXV0YXRlKEFHRV9GID0gY3V0KEFHRSwgYygwLCA1NCwgNjQsIDc0LCAxMDApKSkgJT4lCiAgICAgICAgbXV0YXRlKEFHRV80MCA9IGN1dChBR0UsIGMoMCwgNDAsIDEwMCkpKSAlPiUKICAgICAgICBtdXRhdGUoU0VYX0YgPSBmY3RfcmVjb2RlKFNFWCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTWFsZSIgPSAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZlbWFsZSIgPSAiMiIpKSAlPiUKICAgICAgICBtdXRhdGUoUkFDRV9GID0gZmN0X2NvbGxhcHNlKFJBQ0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIldoaXRlIiA9IGMoIjAxIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkJsYWNrIiA9IGMoIjAyIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFzaWFuIiA9IGMoIjA0IiwgIjA1IiwgIjA2IiwgIjA3IiwgIjA4IiwgIjEwIiwgIjExIiwgIjEyIiwgIjEzIiwgIjE0IiwgIjE1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMTYiLCAiMTciLCAiMjAiLCAiMjEiLCAiMjIiLCAiMjUiLCAiMjYiLCAiMjciLCAiMjgiLCAiMzAiLCAiMzEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIzMiIsICI5NiIsICI5NyIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPdGhlci9VbmsiID0gYygiMDMiLCAiOTgiLCAiOTkiKSkpICU+JQogICAgICAgIG11dGF0ZShISVNQQU5JQyA9IGZjdF9jb2xsYXBzZShTUEFOSVNIX0hJU1BBTklDX09SSUdJTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlllcyIgPSBjKCIxIiwgIjIiLCAiMyIsICI0IiwgIjUiLCAiNiIsICI3IiwgIjgiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vIiA9IGMoIjAiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVua25vd24iID0gYygiOSIpKSkgJT4lCiAgICAgICAgbXV0YXRlKElOU1VSQU5DRV9GID0gZmN0X3JlY29kZShJTlNVUkFOQ0VfU1RBVFVTLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOb25lIiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHJpdmF0ZSIgPSAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1lZGljYWlkIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTWVkaWNhcmUiID0gIjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPdGhlciBHb3Zlcm5tZW50IiA9ICI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVW5rbm93biIgPSAiOSIpKSAlPiUKICAgICAgICBtdXRhdGUoSU5TVVJBTkNFX0YgPSBmY3RfcmVsZXZlbChJTlNVUkFOQ0VfRiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHJpdmF0ZSIpKSAlPiUKICAgICAgICBtdXRhdGUoSU5DT01FX0YgPSBmY3RfcmVjb2RlKE1FRF9JTkNfUVVBUl8xMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTGVzcyB0aGFuICQzOCwwMDAiID0gIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIkMzgsMDAwIC0gJDQ3LDk5OSIgPSAiMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiQ0OCwwMDAgLSAkNjIsOTk5IiA9ICIzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJDYzLDAwMCArIiA9ICI0IikpICU+JQogICAgICAgIG11dGF0ZShFRFVDQVRJT05fRiA9IGZjdF9yZWNvZGUoTk9fSFNEX1FVQVJfMTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMjElIG9yIG1vcmUiID0gIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjEzIC0gMjAuOSUiID0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjcgLSAxMi45JSIgPSAiMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTGVzcyB0aGFuIDclIiA9ICI0IikpICU+JQogICAgICAgIG11dGF0ZShVX1JfRiA9IGZjdF9jb2xsYXBzZShVUl9DRF8xMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1ldHJvIiA9IGMoIjEiLCAiMiIsICIzIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVcmJhbiIgPSBjKCI0IiwgIjUiLCAiNiIsICI3IiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSdXJhbCIgPSBjKCI4IiwgIjkiKSkpICU+JQogICAgICAgIG11dGF0ZShDTEFTU19PRl9DQVNFX0YgPSBmY3RfY29sbGFwc2UoQ0xBU1NfT0ZfQ0FTRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbF9QYXJ0X1ByaW0gPSBjKCIxMCIsICIxMSIsICIxMiIsICIxMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMTQiLCAiMjAiLCAiMjEiLCAiMjIiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE90aGVyX0ZhY2lsaXR5ID0gYygiMDAiKSkpICU+JQogICAgICAgIG11dGF0ZShHUkFERV9GID0gZmN0X3JlY29kZShHUkFERSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHciBJOiBXZWxsIERpZmYiID0gIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdyIElJOiBNb2QgRGlmZiIgPSAiMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR3IgSUlJOiBQb29yIERpZmYiID0gIjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdyIElWOiBVbmRpZmYvQW5hcGxhc3RpYyIgPSAiNCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTkEvVW5rb3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShISVNUT0xPR1lfRiA9IGZjdF9pbmZyZXEoSElTVE9MT0dZKSkgJT4lCiAgICAgICAgbXV0YXRlKEhJU1RPTE9HWV9GID0gZmFjdG9yKEhJU1RPTE9HWV9GKSkgJT4lCiAgICAgICAgbXV0YXRlKEhJU1RPTE9HWV9GX0xJTSA9IGZjdF9sdW1wKEhJU1RPTE9HWV9GLCBwcm9wID0gMC4wNSkpICU+JQogICAgICAgIG11dGF0ZShUTk1fQ0xJTl9UID0gZmN0X3JlY29kZShUTk1fQ0xJTl9ULAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTl9BIiA9ICI4OCIpKSAlPiUKICAgICAgICBtdXRhdGUoVE5NX0NMSU5fVCA9IGZjdF9yZWxldmVsKFROTV9DTElOX1QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMSIpKSAlPiUKICAgICAgICBtdXRhdGUoVE5NX0NMSU5fTiA9IGZjdF9yZWNvZGUoVE5NX0NMSU5fTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5fQSIgPSAiODgiKSkgJT4lCiAgICAgICAgbXV0YXRlKFROTV9DTElOX00gPSBmY3RfcmVjb2RlKFROTV9DTElOX00sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOX0EiID0gIjg4IikpICU+JQogICAgICAgIG11dGF0ZShUTk1fUEFUSF9UID0gZmN0X3JlY29kZShUTk1fUEFUSF9ULAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTl9BIiA9ICI4OCIpKSAlPiUKICAgICAgICBtdXRhdGUoVE5NX1BBVEhfVCA9IGZjdF9yZWxldmVsKFROTV9QQVRIX1QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMSIpKSAlPiUKICAgICAgICBtdXRhdGUoVE5NX1BBVEhfTiA9IGZjdF9yZWNvZGUoVE5NX1BBVEhfTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5fQSIgPSAiODgiKSkgJT4lCiAgICAgICAgbXV0YXRlKFROTV9QQVRIX00gPSBmY3RfcmVjb2RlKFROTV9QQVRIX00sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOX0EiID0gIjg4IikpICU+JQogICAgICAgIG11dGF0ZShUTk1fQ0xJTl9TVEFHRV9HUk9VUCA9IGZjdF9yZWNvZGUoVE5NX0NMSU5fU1RBR0VfR1JPVVAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOX0EiID0gIjg4IikpICU+JQogICAgICAgIG11dGF0ZShUTk1fUEFUSF9TVEFHRV9HUk9VUCA9IGZjdF9yZWNvZGUoVE5NX1BBVEhfU1RBR0VfR1JPVVAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOX0EiID0gIjg4IikpICU+JQogICAgICAgIG11dGF0ZShNQVJHSU5TID0gZmN0X3JlY29kZShSWF9TVU1NX1NVUkdJQ0FMX01BUkdJTlMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBSZXNpZHVhbCIgPSAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSZXNpZHVhbCwgTk9TIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1pY3Jvc2NvcGljIFJlc2lkIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1hY3Jvc2NvcGljIFJlc2lkIiA9ICIzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vdCBldmFsdWFibGUiID0gIjciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm8gc3VyZyIgPSAiOCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShNQVJHSU5TX1lOID0gZmN0X2NvbGxhcHNlKFJYX1NVTU1fU1VSR0lDQUxfTUFSR0lOUywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiWWVzIiA9IGMoIjEiLCAiMiIsICIzIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vIiA9IGMoIjAiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm8gc3VyZy9VbmsvTkEiID0gYygiNyIsICI4IiwgIjkiKSkpICU+JQogICAgICAgIG11dGF0ZShSRUFETV9IT1NQXzMwX0RBWVNfRiA9IGZjdF9yZWNvZGUoUkVBRE1fSE9TUF8zMF9EQVlTLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vX1N1cmdfb3JfTm9fUmVhZG1pdCIgPSAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVW5wbGFuX1JlYWRtaXRfU2FtZSIgPSAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUGxhbl9SZWFkbWl0X1NhbWUiID0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBsYW5VbnBsYW5fU2FtZSIgPSAiMyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVW5rbm93biIgPSAiNCIpKSAlPiUKICAgICAgICBtdXRhdGUoUlhfU1VNTV9SQURJQVRJT05fRiA9IGZjdF9yZWNvZGUoUlhfU1VNTV9SQURJQVRJT04sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOb25lIiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkJlYW0gUmFkaWF0aW9uIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZGlvYWN0aXZlIEltcGxhbnRzIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZGlvaXNvdG9wZXMiID0gIjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQmVhbSArIEltcCBvciBJc290b3BlcyIgPSAiNCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWRpYXRpb24sIE5PUyIgPSAiNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShQVUZfMzBfREFZX01PUlRfQ0RfRiA9IGZjdF9yZWNvZGUoUFVGXzMwX0RBWV9NT1JUX0NELAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFsaXZlXzMwIiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEZWFkXzMwIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShQVUZfOTBfREFZX01PUlRfQ0RfRiA9IGZjdF9yZWNvZGUoUFVGXzkwX0RBWV9NT1JUX0NELAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFsaXZlXzkwIiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEZWFkXzkwIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShMWU1QSF9WQVNDVUxBUl9JTlZBU0lPTl9GID0gZmN0X3JlY29kZShMWU1QSF9WQVNDVUxBUl9JTlZBU0lPTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5lZ19MeW1waFZhc2NfSW52IiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBvc19MdW1waFZhc2NfSW52IiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5fQSIgPSAiOCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShSWF9IT1NQX1NVUkdfQVBQUl8yMDEwX0YgPSBmY3RfcmVjb2RlKFJYX0hPU1BfU1VSR19BUFBSXzIwMTAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vX1N1cmciID0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSb2JvdF9Bc3Npc3QiID0gIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSb2JvdF90b19PcGVuIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRW5kb19MYXAiID0gIjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFbmRvX0xhcF90b19PcGVuIiA9ICI0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT3Blbl9Vbmtub3duIiA9ICI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVW5rbm93biIgPSAiOSIpKSAlPiUKICAgICAgICBtdXRhdGUoQWxsID0gIkFsbCIpICU+JQogICAgICAgIG11dGF0ZShBbGwgPSBmYWN0b3IoQWxsKSkgJT4lCiAgICAgICAgbXV0YXRlKFJFQVNPTl9GT1JfTk9fU1VSR0VSWV9GID0gZmN0X3JlY29kZShSRUFTT05fRk9SX05PX1NVUkdFUlksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VyZyBwZXJmb3JtZWQiID0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cmcgbm90IHJlY29tbWVuZGVkIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBzdXJnIGR1ZSB0byBwdCBmYWN0b3JzIiA9ICIyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBzdXJnLCBwdCBkaWVkIiA9ICI1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXJnIHJlYywgbm90IGRvbmUiID0gIjYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cmcgcmVjLCBwdCByZWZ1c2VkIiA9ICI3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXJnIHJlYywgdW5rIGlmIGRvbmUiID0gIjgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVua25vd24iID0gIjkiKSkgJT4lCiAgICAgICAgbXV0YXRlKFNVUkdFUllfWU4gPSBpZmVsc2UoUkVBU09OX0ZPUl9OT19TVVJHRVJZID09ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiWWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoUkVBU09OX0ZPUl9OT19TVVJHRVJZID09ICI5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVrbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyIpKSkgJT4lCiAgICAgICAgbXV0YXRlKFNVUkdfVEYgPSBjYXNlX3doZW4oU1VSR0VSWV9ZTiA9PSAiWWVzIiB+IFRSVUUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1VSR0VSWV9ZTiA9PSAiTm8iIH4gRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJVRSB+IE5BKSkgICU+JQogICAgICAgIG11dGF0ZShSRUFTT05fRk9SX05PX1JBRElBVElPTl9GID0gZmN0X3JlY29kZShSRUFTT05fRk9SX05PX1JBRElBVElPTiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgcGVyZm9ybWVkIiA9ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgbm90IHJlY29tbWVuZGVkIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBSYWQgZHVlIHRvIHB0IGZhY3RvcnMiID0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vIFJhZCwgcHQgZGllZCIgPSAiNSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmFkIHJlYywgbm90IGRvbmUiID0gIjYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZCByZWMsIHB0IHJlZnVzZWQiID0gIjciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZCByZWMsIHVuayBpZiBkb25lIiA9ICI4IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShSQURJQVRJT05fWU4gPSBpZmVsc2UoUkVBU09OX0ZPUl9OT19SQURJQVRJT04gPT0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJZZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShSRUFTT05fRk9SX05PX1JBRElBVElPTiA9PSAiOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5BLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm8iKSkpICU+JQogICAgICAgIG11dGF0ZShTVVJHUkFEX1NFUV9GID0gZmN0X3JlY29kZShSWF9TVU1NX1NVUkdSQURfU0VRLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm9uZSBvciBTdXJnIG9yIFJhZCIgPSAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgYmVmb3JlIFN1cmciID0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VyZyBiZWZvcmUgUmFkIiA9ICIzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZCBiZWZvcmUgYW5kIGFmdGVyIFN1cmciID0gIjQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSW50cmFvcCBSYWQiID0gIjUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSW50cmFvcCBSYWQgcGx1cyBvdGhlciIgPSAiNiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIiA9ICI5IikpICU+JQogICAgICAgIG11dGF0ZShTVVJHX1JBRF9TRVEgPSBpZmVsc2UoU1VSR0VSWV9ZTiA9PSAiWWVzIiAmIFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cmcgQWxvbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJBRElBVElPTl9ZTiA9PSAiWWVzIiAmIFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgQWxvbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShTVVJHRVJZX1lOID09ICJObyIgJiBSQURJQVRJT05fWU4gPT0gIk5vIiAmIFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm8gVHJlYXRtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZCB0aGVuIFN1cmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXJnIHRoZW4gUmFkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoUlhfU1VNTV9TVVJHUkFEX1NFUSA9PSAiNCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgYmVmb3JlIGFuZCBhZnRlciBTdXJnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk90aGVyIikpKSkpKSkgJT4lCiAgICAgICAgbXV0YXRlKFNVUkdfUkFEX1NFUSA9IGZjdF9yZWxldmVsKFNVUkdfUkFEX1NFUSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cmcgQWxvbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VyZyB0aGVuIFJhZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgQWxvbmUiKSkgJT4lCiAgICAgICAgbXV0YXRlKENIRU1PX1lOID0gZmN0X2NvbGxhcHNlKFJYX1NVTU1fQ0hFTU8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyIgPSBjKCIwMCIsICI4MiIsICI4NSIsICI4NiIsICI4NyIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiWWVzIiA9IGMoIjAxIiwgIjAyIiwgIjAzIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJVa24iID0gYygiODgiLCAiOTkiKSkpICU+JQogICAgICAgIG11dGF0ZShTVVJHX1JBRF9TRVFfQyA9IGlmZWxzZShTVVJHRVJZX1lOID09ICJZZXMiICYgUlhfU1VNTV9TVVJHUkFEX1NFUSA9PSAiMCIgJiBDSEVNT19ZTiA9PSAiTm8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlN1cmcsIE5vIHJhZCwgTm8gQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJBRElBVElPTl9ZTiA9PSAiWWVzIiAmIFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjAiICYgQ0hFTU9fWU4gPT0gIk5vIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmFkLCBObyBTdXJnLCBObyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFNVUkdFUllfWU4gPT0gIk5vIiAmIFJBRElBVElPTl9ZTiA9PSAiTm8iICYgUlhfU1VNTV9TVVJHUkFEX1NFUSA9PSAiMCIgJiBDSEVNT19ZTiA9PSAiTm8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm8gU3VyZywgTm8gUmFkLCBObyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShSWF9TVU1NX1NVUkdSQURfU0VRID09ICIyIiAmIENIRU1PX1lOID09ICJObyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmFkIHRoZW4gU3VyZywgTm8gQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjMiICYgQ0hFTU9fWU4gPT0gIk5vIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VyZyB0aGVuIFJhZCwgTm8gQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShSWF9TVU1NX1NVUkdSQURfU0VRID09ICI0IiAmIENIRU1PX1lOID09ICJObyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgYmVmb3JlIGFuZCBhZnRlciBTdXJnLCBObyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFNVUkdFUllfWU4gPT0gIlllcyIgJiBSWF9TVU1NX1NVUkdSQURfU0VRID09ICIwIiAmIENIRU1PX1lOID09ICJZZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VyZywgTm8gcmFkLCBZZXMgQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoUkFESUFUSU9OX1lOID09ICJZZXMiICYgUlhfU1VNTV9TVVJHUkFEX1NFUSA9PSAiMCIgJiBDSEVNT19ZTiA9PSAiWWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQsIE5vIFN1cmcsIFllcyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoU1VSR0VSWV9ZTiA9PSAiTm8iICYgUkFESUFUSU9OX1lOID09ICJObyIgJiBSWF9TVU1NX1NVUkdSQURfU0VRID09ICIwIiAmIENIRU1PX1lOID09ICJZZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBTdXJnLCBObyBSYWQsIFllcyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjIiICYgQ0hFTU9fWU4gPT0gIlllcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSYWQgdGhlbiBTdXJnLCBZZXMgQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoUlhfU1VNTV9TVVJHUkFEX1NFUSA9PSAiMyIgJiBDSEVNT19ZTiA9PSAiWWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdXJnIHRoZW4gUmFkLCBZZXMgQ2hlbW8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFJYX1NVTU1fU1VSR1JBRF9TRVEgPT0gIjQiICYgQ0hFTU9fWU4gPT0gIlllcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhZCBiZWZvcmUgYW5kIGFmdGVyIFN1cmcsIFllcyBDaGVtbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk90aGVyIikpKSkpKSkpKSkpKSkgJT4lCiAgICAgICAgbXV0YXRlKFNVUkdfUkFEX1NFUV9DID0gZmN0X2luZnJlcShTVVJHX1JBRF9TRVFfQykpICU+JQogICAgICAgIG11dGF0ZShUX1NJWkUgPSBhcy5udW1lcmljKFRVTU9SX1NJWkUpKSAlPiUKICAgICAgICBtdXRhdGUoVF9TSVpFID0gaWZlbHNlKFRfU0laRSA9PSAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBUdW1vciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKFRfU0laRSA+IDAgJiBUX1NJWkUgPCAxMCB8IFRfU0laRSA9PSA5OTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI8IDEgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoVF9TSVpFID49IDEwICYgVF9TSVpFIDwgMjAgfCBUX1NJWkUgPT0gOTkyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjEtMiBjbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoVF9TSVpFID49IDIwICYgVF9TSVpFIDwgMzAgfCBUX1NJWkUgPT0gOTkzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIyLTMgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShUX1NJWkUgPj0gMzAgJiBUX1NJWkUgPCA0MCB8IFRfU0laRSA9PSA5OTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIzLTQgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoVF9TSVpFID49IDQwICYgVF9TSVpFIDwgNTAgfCBUX1NJWkUgPT0gOTk1LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjQtNSBjbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZmVsc2UoVF9TSVpFID49IDUwICYgVF9TSVpFIDwgNjAgfCBUX1NJWkUgPT0gOTk2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI1LTYgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShUX1NJWkUgPj0gNjAgJiBUX1NJWkUgPD0gOTg3IHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUX1NJWkUgPT0gOTgwIHwgVF9TSVpFID09IDk4OSB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVF9TSVpFID09IDk5NywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiPjYgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmZWxzZShUX1NJWkUgPT0gOTg4IHwgVF9TSVpFID09IDk5OSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5BX3VuayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNaWNyb3Njb3BpYyBmb2N1cyIpKSkpKSkpKSkpICU+JQogICAgICAgIG11dGF0ZShUX1NJWkUgPSBmYWN0b3IoVF9TSVpFKSkgJT4lCiAgICAgICAgbXV0YXRlKFRfU0laRSA9IGZjdF9yZWxldmVsKFRfU0laRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJObyBUdW1vciIsICJNaWNyb3Njb3BpYyBmb2N1cyIsICI8IDEgY20iLCAiMS0yIGNtIiwgIjItMyBjbSIsICIzLTQgY20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiNC01IGNtIiwgIjUtNiBjbSIsICI+NiBjbSIsICJOQV91bmsiKSkgJT4lCiAgICAgICAgbXV0YXRlKG1ldHNfYXRfZHggPSBjYXNlX3doZW4oQ1NfTUVUU19EWF9MVU5HID09ICIxIiB+ICJMdW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDU19NRVRTX0RYX0JPTkUgPT0gIjEiIH4gIkJvbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENTX01FVFNfRFhfQlJBSU4gPT0gIjEiIH4gIkJyYWluIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDU19NRVRTX0RYX0xJVkVSID09ICIxIiB+ICJMaXZlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFJVRSB+ICJOb25lL090aGVyL1Vuay9OQSIpKSAlPiUKICAgICAgICBtdXRhdGUoTUVESUNBSURfRVhQTl9DT0RFID0gZmN0X3JlY29kZShNRURJQ0FJRF9FWFBOX0NPREUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vbi1FeHBhbnNpb24gU3RhdGUiID0gIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJKYW4gMjAxNCBFeHBhbnNpb24gU3RhdGVzIiA9ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRWFybHkgRXhwYW5zaW9uIFN0YXRlcyAoMjAxMC0xMykiID0gIjIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJMYXRlIEV4cGFuc2lvbiBTdGF0ZXMgKD4gSmFuIDIwMTQpIiA9ICIzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU3VwcHJlc3NlZCBmb3IgQWdlcyAwIC0gMzkiID0gIjkiKSkgICU+JQogICAgICAgIG11dGF0ZShFWFBOX0dST1VQID0gIGNhc2Vfd2hlbihNRURJQ0FJRF9FWFBOX0NPREUgICVpbiUgYygiSmFuIDIwMTQgRXhwYW5zaW9uIFN0YXRlcyIpICYgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWUVBUl9PRl9ESUFHTk9TSVMgJWluJSBjKCIyMDE0IiwgIjIwMTUiKSB+ICJQb3N0LUV4cGFuc2lvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRURJQ0FJRF9FWFBOX0NPREUgICVpbiUgYygiSmFuIDIwMTQgRXhwYW5zaW9uIFN0YXRlcyIpICYgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWUVBUl9PRl9ESUFHTk9TSVMgJWluJSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYygiMjAwNCIsICIyMDA1IiwgIjIwMDYiLCAiMjAwNyIsICIyMDA4IiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjIwMDkiLCAiMjAxMCIsICIyMDExIiwgIjIwMTIiLCAiMjAxMyIpIH4gIlByZS1FeHBhbnNpb24iLAogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVESUNBSURfRVhQTl9DT0RFICAlaW4lIGMoIkVhcmx5IEV4cGFuc2lvbiBTdGF0ZXMgKDIwMTAtMTMpIikgJiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBZRUFSX09GX0RJQUdOT1NJUyAlaW4lIGMoIjIwMTAiLCAiMjAxMSIsICIyMDEyIiwgIjIwMTMiLCAiMjAxNCIsICIyMDE1IikgfiAiUG9zdC1FeHBhbnNpb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1FRElDQUlEX0VYUE5fQ09ERSAgJWluJSBjKCJFYXJseSBFeHBhbnNpb24gU3RhdGVzICgyMDEwLTEzKSIpICYgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWUVBUl9PRl9ESUFHTk9TSVMgJWluJSBjKCIyMDA0IiwgIjIwMDUiLCAiMjAwNiIsICIyMDA3IiwgIjIwMDgiLCAiMjAwOSIpIH4gIlByZS1FeHBhbnNpb24iLAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVESUNBSURfRVhQTl9DT0RFICVpbiUgYygiTm9uLUV4cGFuc2lvbiBTdGF0ZSIpIH4gIlByZS1FeHBhbnNpb24iLAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVESUNBSURfRVhQTl9DT0RFICVpbiUgYygiTGF0ZSBFeHBhbnNpb24gU3RhdGVzICg+IEphbiAyMDE0KSIpIH4gIlByZS1FeHBhbnNpb24iLAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRURJQ0FJRF9FWFBOX0NPREUgJWluJSBjKCJMYXRlIEV4cGFuc2lvbiBTdGF0ZXMgKD4gSmFuIDIwMTQpIikgJiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFlFQVJfT0ZfRElBR05PU0lTICVpbiUgYygiMjAxNCIsICIyMDE1IikgfiAiRXhjbHVkZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRURJQ0FJRF9FWFBOX0NPREUgPT0gIlN1cHByZXNzZWQgZm9yIEFnZXMgMCAtIDM5IiB+ICJFeGNsdWRlIikpICU+JQogIAogIG11dGF0ZShwcmVfMjAxNCA9IFlFQVJfT0ZfRElBR05PU0lTICVpbiUgYygiMjAwNCIsICIyMDA1IiwgIjIwMDYiLCAiMjAwNyIsICIyMDA4IiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIjIwMDkiLCAiMjAxMCIsICIyMDExIiwgIjIwMTIiLCAiMjAxMyIpKSAlPiUKICAKICBtdXRhdGUobWV0c19hdF9keF9GID0gaWZlbHNlKG1ldHNfYXRfZHggPT0gIk5vbmUvT3RoZXIvVW5rL05BIiwgRkFMU0UsIFRSVUUpKSAlPiUgCiAgCiAgbXV0YXRlKFR4X1lOID0gaWZlbHNlKFNVUkdfUkFEX1NFUSA9PSAiTm8gVHJlYXRtZW50IiAmIENIRU1PX1lOID09ICJObyIsIEZBTFNFLCAKICAgICAgICAgICAgICAgICAgICAgICAgaWZlbHNlKENIRU1PX1lOID09ICJVa24iLCBOQSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUlVFKSkpCgpmYWN0X3ZhcnNfMiA8LSBjKCJGQUNJTElUWV9UWVBFX0YiLCAiRkFDSUxJVFlfTE9DQVRJT05fRiIsICJBR0VfRiIsICJTRVhfRiIsICJSQUNFX0YiLAogICAgICAgICAgICAgICAgICJISVNQQU5JQyIsICJJTlNVUkFOQ0VfRiIsICJJTkNPTUVfRiIsICJFRFVDQVRJT05fRiIsICJVX1JfRiIsCiAgICAgICAgICAgICAgICAgIkNEQ0NfVE9UQUxfQkVTVCIsICJDTEFTU19PRl9DQVNFX0YiLCAiWUVBUl9PRl9ESUFHTk9TSVMiLCAiUFJJTUFSWV9TSVRFIiwgIkhJU1RPTE9HWSIsCiAgICAgICAgICAgICAgICAgIkJFSEFWSU9SIiwgIkdSQURFX0YiLCAiVE5NX0NMSU5fVCIsICJUTk1fQ0xJTl9OIiwgIlROTV9DTElOX00iLAogICAgICAgICAgICAgICAgICJUTk1fQ0xJTl9TVEFHRV9HUk9VUCIsICJUTk1fUEFUSF9UIiwgIlROTV9QQVRIX04iLCAiVE5NX1BBVEhfTSIsICJUTk1fUEFUSF9TVEFHRV9HUk9VUCIsCiAgICAgICAgICAgICAgICAgIk1BUkdJTlMiLCAiUkVBRE1fSE9TUF8zMF9EQVlTX0YiLCAiUlhfU1VNTV9SQURJQVRJT05fRiIsICJQVUZfMzBfREFZX01PUlRfQ0RfRiIsCiAgICAgICAgICAgICAgICAgIlBVRl85MF9EQVlfTU9SVF9DRF9GIiwgIkxZTVBIX1ZBU0NVTEFSX0lOVkFTSU9OX0YiLCAiUlhfSE9TUF9TVVJHX0FQUFJfMjAxMF9GIiwgIm1ldHNfYXRfZHgiKQoKCmRhdCA8LSBkYXQgJT4lCiAgICAgICAgbXV0YXRlX2F0KGZhY3RfdmFyc18yLCBmdW5zKGZhY3RvciguKSkpCgpgYGAKCgoKIyBFeHRyYWN0IERhdGEgb2YgSW50ZXJlc3QKCmBgYHtyfQojIE1lbGFub21hCnNpdGVfY29kZSA8LSBjKAogICNsaXAgIAogICJDMDAwIiwgIkMwMDEiLCAiQzAwMiIsICJDMDAzIiwgIkMwMDQiLCAiQzAwNSIsIkMwMDYiLCAiQzAwOCIsIkMwMDkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAojc2tpbi9tZWxhbm9tYQogICJDNDQwIiwgIkM0NDEiLCAiQzQ0MiIsICJDNDQzIiwgIkM0NDQiLCAiQzQ0NSIsICJDNDQ2IiwgIkM0NDciLCAiQzQ0OCIsICJDNDQ5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAjYnJlYXN0IC0gbmlwcGxlCiAgIkM1MDAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKI3ZhZ2luYS92dWx2YQogICJDNTEwIiwgIkM1MTEiLCAiQzUxMiIsICJDNTE4IiwgIkM1MTkiLCAiQzUyOSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAojcGVuaXMKICJDNjAwIiwgIkM2MDEiLCAiQzYwMiIsICJDNjA4IiwgIkM2MDkiLCAiQzYzOSIpCgoKaGlzdG9fY29kZSA8LSBjKCI4NzIwIiwgIjg3NDEiLCAiODc0NiIsICI4NzIxIiwgIjg3MjIiLCAiODcyMyIsICI4NzMwIiwgIjg3NDAiLCAiODc0MiIsICI4NzQzIiwgIjg3NDQiLCAiODc0NSIsICI4NzYxIikKCmJlaGF2aW9yX2NvZGUgPC0gYygiMyIpCgpkYXRhIDwtIGRhdCAlPiUKICAgICAgICBmaWx0ZXIoQkVIQVZJT1IgJWluJSBiZWhhdmlvcl9jb2RlKSAlPiUKICAgICAgICBmaWx0ZXIoUFJJTUFSWV9TSVRFICVpbiUgc2l0ZV9jb2RlKSAlPiUKICAgICAgICBmaWx0ZXIoSElTVE9MT0dZICVpbiUgaGlzdG9fY29kZSkgJT4lCiAgICAgICAgZmlsdGVyKGlzLm5hKFBVRl9WSVRBTF9TVEFUVVMpID09IEZBTFNFKSAlPiUKICAgICAgICBmaWx0ZXIoU0VRVUVOQ0VfTlVNQkVSID09ICIwMCIpICU+JQogICAgICAgIGZpbHRlcihpcy5uYShEWF9MQVNUQ09OVEFDVF9ERUFUSF9NT05USFMpID09IEZBTFNFKQogICAjIGZpbHRlcihBR0UgPj0gMTgpICU+JQogICAjICAgICAgZmlsdGVyKFROTV9DTElOX00gJWluJSBjKCJjMCIpKSAlPiUKICAgIyAgICAgIAogICAjICAgICAgZmlsdGVyKENMQVNTX09GX0NBU0UgJWluJSBjKCIxMCIsICIxMiIsICIxNCIsICIyMiIpKSAlPiUKICAgICAgICAKCm5vX0V4Y2x1ZGVzIDwtIGFzLmRhdGEuZnJhbWUoZGF0YSAlPiUgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoRVhQTl9HUk9VUCAhPSAiRXhjbHVkZSIpIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICU+JSBkcm9wbGV2ZWxzKCkpCgoKZmlsZV9wYXRoIDwtIGMoIi9Vc2Vycy9iZWFzdGF0bGlmZS9Hb29nbGUgRHJpdmUvUGVubi9SZXNlYXJjaC9CYXJiaWVyaS9OQ0RCIikKc2F2ZShkYXRhLAogICAgICBmaWxlID0gcGFzdGUwKGZpbGVfcGF0aCwgIi9tZWxhbm9tYV9kYXRhLlJkYSIpKQpgYGAKCmBgYHtyIGxvYWREYXRhfQojbG9hZCgibWVsYW5vbWFfZGF0YS5SZGEiKQpgYGAKCgoKCkRhdGEgaW5jbHVkaW5nIHNraW4gdHVtb3JzIHdhcyBvYnRhaW5lZCBmcm9tIHRoZSBOQ0JEIG9uIE9jdG9iZXIgNywgMjAxOS4gQ2FzZXMgdGhhdCB3ZXJlIGluY2x1ZGVkIGluIHRoaXMgYW5hbHlzaXMgd2VyZSB0aG9zZSB3aXRoOgoKMS4gU2l0ZSBjb2RlczogYHIgc2l0ZV9jb2RlYAoyLiBIaXN0b2xvZ3kgY29kZXM6IGByIGhpc3RvX2NvZGVgCjMuIEJlaGF2aW9yIGNvZGVzOiBgciBiZWhhdmlvcl9jb2RlYAoKClBhdGllbnRzIHdlcmUgZXhjbHVkZWQgaWYgdGhleSBkaWRuJ3QgaGF2ZSB2YWx1ZXMgZm9yIGVpdGhlciBmb2xsb3cgdXAgb3Igdml0YWwgc3RhdHVzLgoKUGF0aWVudHMgd2VyZSBleGNsdWRlZCBpZiB0aGV5IGhhZCBzdXJnZXJ5IHRvIGEgZGlzdGFudCBzaXRlIHVzaW5nIGBSWF9TVU1NX1NVUkdfT1RIX1JFR0RJU2AuIFRoaXMgd2FzIGRvbmUgdG8gYXZvaWQgY29uZm91bmRpbmcgb2YgZGlmZmVyZW50IHN1cmdpY2FsIHByb2NlZHVyZXMuIFdlIGFyZSBvbmx5IGludGVyZXN0ZWQgaW4gc3VyZ2VyeSBhdCB0aGUgcHJpbWFyeSBzaXRlLiBUaGVzZSBkaXN0YW50IHNpdGUgc3VyZ2VyaWVzIHdlcmUgYmVpbmcgY291bnRlZCBpbiB0aGUgc3VyZ2VyeS9yYWRpYXRpb24gc2VxdWVuY2UgYW5kIHRodXMgdG8gc2ltcGxpZnkgYW5hbHlzaXMgdGhleSB3ZXJlIHJlbW92ZWQuIAoKYGBge3J9CgpkYXRhICU+JQogICAgICAgIENyZWF0ZVRhYmxlT25lKGRhdGEgPSAuLAogICAgICAgICAgICAgICAgICAgICB2YXJzID0gYygiUlhfU1VNTV9TVVJHX09USF9SRUdESVMiKSwKICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZU5BID0gVFJVRSkgJT4lCiAgICAgICAgcHJpbnQoLiwKICAgICAgICAgICAgICBzaG93QWxsTGV2ZWxzID0gVFJVRSkKCmRhdGEgPC0gZGF0YSAlPiUKICAgICAgICBmaWx0ZXIoUlhfU1VNTV9TVVJHX09USF9SRUdESVMgPT0gIjAiKSAKYGBgCgoKUmFjZSB3YXMgZ3JvdXBlZCBhcyB3aGl0ZSwgYmxhY2ssIGFzaWFuLCBvdGhlci91bmtub3duClN0YWdlIHdhcyBncm91cGVkIGludG8gMCwgSSwgSUksIElJSSwgSVYsIE5BX1Vua25vd24sIHN0YWdlIDAgd2FzIHJlbW92ZWQKV2hldGhlciBzdXJnZXJ5IHdhcyBwZXJmb3JtZWQgd2FzIGJhc2VkIG9uIHRoZSBgUkVBU09OX0ZPUl9OT19TVVJHRVJZYCB2YXJpYWJsZS4gVGhlIGBTVVJHRVJZX1lOYCB2YXJpYWJsZSB3YXMgY2xhc3NpZmllZCBhcyAnWWVzJywgJ05vJywgb3IgJ1Vua25vd24nLgoKCldoZXRoZXIgcmFkaWF0aW9uIHdhcyBwZXJmb3JtZWQgd2FzIGJhc2VkIG9uIHRoZSBgUkVBU09OX0ZPUl9OT19SQURJQVRJT05gIHZhcmlhYmxlLiBUaGUgYFJBRElBVElPTl9ZTmAgdmFyaWFibGUgd2FzIGNsYXNzaWZpZWQgYXMgJ1llcycsICdObycsIG9yICdVbmtub3duJy4KCgoKI1RhYmxlIG9mIHZhcmlhYmxlcyBmb3IgYWxsIGNhc2VzOgoKYGBge3J9CgpwX3RhYmxlKGRhdGEsCiAgICAgICAgdmFycyA9IGMoIkZBQ0lMSVRZX1RZUEVfRiIsICJGQUNJTElUWV9MT0NBVElPTl9GIiwgIkZBQ0lMSVRZX0dFT0dSQVBIWSIsICAiQUdFIiwgIkFHRV9GIiwgIkFHRV80MCIsCiAgICAgICAgICAgICAgICAgIlNFWF9GIiwgIlJBQ0VfRiIsICJISVNQQU5JQyIsICJJTlNVUkFOQ0VfRiIsIAogICAgICAgICAgICAgICAgICJJTkNPTUVfRiIsICJFRFVDQVRJT05fRiIsICJVX1JfRiIsICJDUk9XRkxZIiwgIkNEQ0NfVE9UQUxfQkVTVCIsCiAgICAgICAgICAgICAgICAgIlNJVEVfVEVYVCIsICJISVNUT0xPR1lfRl9MSU0iLCAiSElTVE9MT0dZX0YiLCAiQkVIQVZJT1IiLCAiR1JBREVfRiIsCiAgICAgICAgICAgICAgICAgIkRYX1NUQUdJTkdfUFJPQ19EQVlTIiwgIlROTV9DTElOX1QiLCAiVE5NX0NMSU5fTiIsICJUTk1fQ0xJTl9NIiwKICAgICAgICAgICAgICAgICAiVE5NX0NMSU5fU1RBR0VfR1JPVVAiLCAiVE5NX1BBVEhfVCIsICJUTk1fUEFUSF9OIiwgIlROTV9QQVRIX00iLAogICAgICAgICAgICAgICAgICJUTk1fUEFUSF9TVEFHRV9HUk9VUCIsICJEWF9SWF9TVEFSVEVEX0RBWVMiLCAiRFhfU1VSR19TVEFSVEVEX0RBWVMiLAogICAgICAgICAgICAgICAgICJEWF9ERUZTVVJHX1NUQVJURURfREFZUyIsICJNQVJHSU5TIiwgIk1BUkdJTlNfWU4iLCAiU1VSR19ESVNDSEFSR0VfREFZUyIsCiAgICAgICAgICAgICAgICAgIlJFQURNX0hPU1BfMzBfREFZU19GIiwgIlJYX1NVTU1fUkFESUFUSU9OX0YiLCAiUFVGXzMwX0RBWV9NT1JUX0NEX0YiLAogICAgICAgICAgICAgICAgICJQVUZfOTBfREFZX01PUlRfQ0RfRiIsICJEWF9MQVNUQ09OVEFDVF9ERUFUSF9NT05USFMiLCAKICAgICAgICAgICAgICAgICAiTFlNUEhfVkFTQ1VMQVJfSU5WQVNJT05fRiIsICJSWF9IT1NQX1NVUkdfQVBQUl8yMDEwX0YiLCAiU1VSR19SQURfU0VRIiwKICAgICAgICAgICAgICAgICAiU1VSR19SQURfU0VRX0MiLCAiU1VSR0VSWV9ZTiIsICJSQURJQVRJT05fWU4iLCAiQ0hFTU9fWU4iLCAibWV0c19hdF9keCIsCiAgICAgICAgICAgICAgICAgIk1FRElDQUlEX0VYUE5fQ09ERSIsICJFWFBOX0dST1VQIiwgIlNJVEVfVEVYVCIpKQoKCgpwX3RhYmxlKG5vX0V4Y2x1ZGVzLAogICAgICAgIHZhcnMgPSBjKCJGQUNJTElUWV9UWVBFX0YiLCAiRkFDSUxJVFlfTE9DQVRJT05fRiIsICJGQUNJTElUWV9HRU9HUkFQSFkiLCAgIkFHRSIsICJBR0VfRiIsICJBR0VfNDAiLAogICAgICAgICAgICAgICAgICJTRVhfRiIsICJSQUNFX0YiLCAiSElTUEFOSUMiLCAiSU5TVVJBTkNFX0YiLCAKICAgICAgICAgICAgICAgICAiSU5DT01FX0YiLCAiRURVQ0FUSU9OX0YiLCAiVV9SX0YiLCAiQ1JPV0ZMWSIsICJDRENDX1RPVEFMX0JFU1QiLAogICAgICAgICAgICAgICAgICJTSVRFX1RFWFQiLCAiSElTVE9MT0dZX0ZfTElNIiwgIkhJU1RPTE9HWV9GIiwgIkJFSEFWSU9SIiwgIkdSQURFX0YiLAogICAgICAgICAgICAgICAgICJEWF9TVEFHSU5HX1BST0NfREFZUyIsICJUTk1fQ0xJTl9UIiwgIlROTV9DTElOX04iLCAiVE5NX0NMSU5fTSIsCiAgICAgICAgICAgICAgICAgIlROTV9DTElOX1NUQUdFX0dST1VQIiwgIlROTV9QQVRIX1QiLCAiVE5NX1BBVEhfTiIsICJUTk1fUEFUSF9NIiwKICAgICAgICAgICAgICAgICAiVE5NX1BBVEhfU1RBR0VfR1JPVVAiLCAiRFhfUlhfU1RBUlRFRF9EQVlTIiwgIkRYX1NVUkdfU1RBUlRFRF9EQVlTIiwKICAgICAgICAgICAgICAgICAiRFhfREVGU1VSR19TVEFSVEVEX0RBWVMiLCAiTUFSR0lOUyIsICJNQVJHSU5TX1lOIiwgIlNVUkdfRElTQ0hBUkdFX0RBWVMiLAogICAgICAgICAgICAgICAgICJSRUFETV9IT1NQXzMwX0RBWVNfRiIsICJSWF9TVU1NX1JBRElBVElPTl9GIiwgIlBVRl8zMF9EQVlfTU9SVF9DRF9GIiwKICAgICAgICAgICAgICAgICAiUFVGXzkwX0RBWV9NT1JUX0NEX0YiLCAiRFhfTEFTVENPTlRBQ1RfREVBVEhfTU9OVEhTIiwgCiAgICAgICAgICAgICAgICAgIkxZTVBIX1ZBU0NVTEFSX0lOVkFTSU9OX0YiLCAiUlhfSE9TUF9TVVJHX0FQUFJfMjAxMF9GIiwgIlNVUkdfUkFEX1NFUSIsCiAgICAgICAgICAgICAgICAgIlNVUkdfUkFEX1NFUV9DIiwgIlRfU0laRSIsICJTVVJHRVJZX1lOIiwgIlJBRElBVElPTl9ZTiIsICJDSEVNT19ZTiIsICJtZXRzX2F0X2R4IiwKICAgICAgICAgICAgICAgICAiTUVESUNBSURfRVhQTl9DT0RFIiwiU0lURV9URVhUIiksIAogICAgICAgIHN0cmF0YSA9ICJFWFBOX0dST1VQIikKCgpwX3RhYmxlKGRhdGEsCiAgICAgICAgdmFycyA9IGMoIllFQVJfT0ZfRElBR05PU0lTIiksCiAgICAgICAgc3RyYXRhID0gYygiTUVESUNBSURfRVhQTl9DT0RFIikpCmBgYAoKCmBgYHtyfQoKcHJlRXhwTWVkaWNhcmUgIDwtIG5yb3coZGF0YSAlPiUgZmlsdGVyKEVYUE5fR1JPVVAgPT0gIlByZS1FeHBhbnNpb24iICYgSU5TVVJBTkNFX0YgPT0gIk1lZGljYXJlIikpCnBvc3RFeHBNZWRpY2FyZSA8LSBucm93KGRhdGEgJT4lIGZpbHRlcihFWFBOX0dST1VQID09ICJQb3N0LUV4cGFuc2lvbiIgJiBJTlNVUkFOQ0VfRiA9PSAiTWVkaWNhcmUiKSkKCiMgcCA9IDAuMjUgd2hlbiBjb21wYXJpbmcgY2hhbmdlIGluIHByb3BvcnRpb24gb2YgcGF0aWVudHMgd2l0aCBNZWRpY2FyZSBiZWZvcmUgYW5kIGFmdGVyIEFDQSBleHBhbnNpb24KcHJvcC50ZXN0KGMocHJlRXhwTWVkaWNhcmUsIHBvc3RFeHBNZWRpY2FyZSksIAogICAgICAgICAgYyhucm93KGRhdGEgJT4lIGZpbHRlcihFWFBOX0dST1VQID09ICJQcmUtRXhwYW5zaW9uIikpLCBucm93KGRhdGEgJT4lIGZpbHRlcihFWFBOX0dST1VQID09ICJQb3N0LUV4cGFuc2lvbiIpKSkpCgpwcmVFeHBOb0luc3VyYW5jZSA8LSBucm93KGRhdGEgJT4lIGZpbHRlcihFWFBOX0dST1VQID09ICJQcmUtRXhwYW5zaW9uIikgJT4lIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKElOU1VSQU5DRV9GID09ICJOb25lIikpCnBvc3RFeHBOb0luc3VyYW5jZSA8LSBucm93KGRhdGEgJT4lIGZpbHRlcihFWFBOX0dST1VQID09ICJQb3N0LUV4cGFuc2lvbiIpICU+JSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoSU5TVVJBTkNFX0YgPT0gIk5vbmUiKSkKCiMgU2lnbmlmaWNhbnQgZGVjcmVhc2UgaW4gdGhlIG92ZXJhbGwgcHJvcG9ydGlvbiBvZiBwYXRpZW50cyB3aXRob3V0IGluc3VyYW5jZSBhZnRlciBBQ0EgZXhwYW5zaW9uIApwcm9wLnRlc3QoYyhwcmVFeHBOb0luc3VyYW5jZSwgcG9zdEV4cE5vSW5zdXJhbmNlKSwgCiAgICAgICAgICBjKG5yb3coZGF0YSAlPiUgZmlsdGVyKEVYUE5fR1JPVVAgPT0gIlByZS1FeHBhbnNpb24iKSksIG5yb3coZGF0YSAlPiUgZmlsdGVyKEVYUE5fR1JPVVAgPT0gIlBvc3QtRXhwYW5zaW9uIikpKSkKCnBfdGFibGUobm9fRXhjbHVkZXMsIHN0cmF0YSA9ICJFWFBOX0dST1VQIiwgdmFycyA9ICJEWF9SWF9TVEFSVEVEX0RBWVMiKQoKZGF0YSA8LSBkYXRhICU+JSBtdXRhdGUoSW5zdXJlZCA9IElOU1VSQU5DRV9GICE9ICJVbmtub3duIikKCmBgYAoKCgoKI0thcGxhbiBNZWllciBBbmFseXNpcwoKCiMjQWxsCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJBbGwiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNGYWNpbGl0eSBUeXBlCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkZBQ0lMSVRZX1RZUEVfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0ZhY2lsaXR5IExvY2F0aW9uCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJGQUNJTElUWV9MT0NBVElPTl9GIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjRmFjaWxpdHkgR2VvZ3JhcGh5CgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJGQUNJTElUWV9HRU9HUkFQSFkiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNBZ2UgR3JvdXAKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkFHRV9GIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjQWdlIEdyb3VwCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkFHRV80MCIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0dlbmRlcgoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiU0VYX0YiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNSQUNFX0YKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlJBQ0VfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0hpc3BhbmljCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJISVNQQU5JQyIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0luc3VyYW5jZSBTdGF0dXMKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIklOU1VSQU5DRV9GIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjT3ZlcmFsbCBTdXJ2aXZhbCBwcmUvcG9zdC1BQ0EgZXhwYW5zaW9uCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJFWFBOX0dST1VQIiwgZGF0YV9pbXAgPSBub19FeGNsdWRlcykKYGBgCgoKPCEtLSAjI0luY29tZSAtLT4KCjwhLS0gYGBge3J9IC0tPgo8IS0tIGNsYXNzKGRhdGEkSU5DT01FX0YpIC0tPgo8IS0tIHVuaV92YXIodGVzdF92YXIgPSAiSU5DT01FX0YiLCBkYXRhX2ltcCA9IGRhdGEpIC0tPgo8IS0tIGBgYCAtLT4KCiMjRWR1Y2F0aW9uCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJFRFVDQVRJT05fRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1VyYmFuL1J1cmFsCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJVX1JfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0NsYXNzICh0cmVhdG1lbnQgYXQgcGVyZm9ybWluZyBmYWNpbGl0eSkKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkNMQVNTX09GX0NBU0VfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1llYXIKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIllFQVJfT0ZfRElBR05PU0lTIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjUHJpbWFyeSBTaXRlCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJTSVRFX1RFWFQiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKCiMjSGlzdG9sb2d5CgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJISVNUT0xPR1lfRl9MSU0iLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKPCEtLSAjI0JlaGF2aW9yIC0tPgoKPCEtLSBgYGB7cn0gLS0+CjwhLS0gdW5pX3Zhcih0ZXN0X3ZhciA9ICJCRUhBVklPUiIsIGRhdGFfaW1wID0gZGF0YSkgLS0+CjwhLS0gYGBgIC0tPgoKIyNHcmFkZQoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiR1JBREVfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI0NsaW5pY2FsIFQgU3RhZ2UKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlROTV9DTElOX1QiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNDbGluaWNhbCBOIFN0YWdlCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJUTk1fQ0xJTl9OIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCjwhLS0gIyNDbGluaWNhbCBNIFN0YWdlIC0tPgoKPCEtLSBgYGB7cn0gLS0+CjwhLS0gdW5pX3Zhcih0ZXN0X3ZhciA9ICJUTk1fQ0xJTl9NIiwgZGF0YV9pbXAgPSBkYXRhKSAtLT4KPCEtLSBgYGAgLS0+CgojI0NsaW5pY2FsIFN0YWdlIEdyb3VwCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJUTk1fQ0xJTl9TVEFHRV9HUk9VUCIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1BhdGhvbG9naWMgVCBTdGFnZQoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiVE5NX1BBVEhfVCIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1BhdGhvbG9naWMgTiBTdGFnZQoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiVE5NX1BBVEhfTiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1BhdGhvbG9naWMgTSBTdGFnZQoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiVE5NX1BBVEhfTSIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1BhdGhvbG9naWMgU3RhZ2UgR3JvdXAKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlROTV9QQVRIX1NUQUdFX0dST1VQIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjTWFyZ2lucwpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJNQVJHSU5TIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjTWFyZ2lucyBZZXMvTm8KYGBge3J9CiN1bmlfdmFyKHRlc3RfdmFyID0gIk1BUkdJTlNfWU4iLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyMzMCBEYXkgUmVhZG1pc3Npb24KCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlJFQURNX0hPU1BfMzBfREFZU19GIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjUmFkaWF0aW9uIFR5cGUKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlJYX1NVTU1fUkFESUFUSU9OX0YiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKCiMjTHltcGhvdmFzY3VsYXIgSW52YXNpb24KCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkxZTVBIX1ZBU0NVTEFSX0lOVkFTSU9OX0YiLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNFbmRvc2NvcGljL1JvYm90aWMKCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlJYX0hPU1BfU1VSR19BUFBSXzIwMTBfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgojI1N1cmdlcnkgUmFkaWF0aW9uIFNlcXVlbmNlIAoKYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiU1VSR19SQURfU0VRIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCiMjU3VyZ2VyeSBZZXMvTm8KCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIlNVUkdFUllfWU4iLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNSYWRpYXRpb24gWWVzL05vCgpgYGB7cn0KdW5pX3Zhcih0ZXN0X3ZhciA9ICJSQURJQVRJT05fWU4iLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNDaGVtbyBZZXMvTm8KCmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIkNIRU1PX1lOIiwgZGF0YV9pbXAgPSBkYXRhKQpgYGAKCgojI1RyZWF0bWVudCBZZXMvTm8KYGBge3J9CnVuaV92YXIodGVzdF92YXIgPSAiVHhfWU4iLCBkYXRhX2ltcCA9IGRhdGEpCmBgYAoKIyNNZXRhc3Rhc2VzIGF0IER4CmBgYHtyfQp1bmlfdmFyKHRlc3RfdmFyID0gIm1ldHNfYXRfZHhfRiIsIGRhdGFfaW1wID0gZGF0YSkKYGBgCgo8IS0tICMjVHVtb3IgU2l6ZSAtLT4KCjwhLS0gYGBge3J9IC0tPgo8IS0tIHVuaV92YXIodGVzdF92YXIgPSAiVF9TSVpFIiwgZGF0YV9pbXAgPSBkYXRhKSAtLT4KPCEtLSBgYGAgLS0+CgojVHVtb3Igc3BlY2lmaWMgVmFyaWFibGVzCgoKIyMjTm9kZSBTaXplCgoKI0NveCBQcm9wb3J0aW9uYWwgSGF6YXJkIFJhdGlvCgojI01vZGVsICMxCgojIyNGdWxsIGFuYWx5c2lzCgpgYGB7cn0KbW9kZWxfb25lIDwtIGNveHBoKFN1cnYoRFhfTEFTVENPTlRBQ1RfREVBVEhfTU9OVEhTLCBQVUZfVklUQUxfU1RBVFVTID09IDApCiAgICAgICAgICAgICAgICAgICAgIH4gU1VSR19SQURfU0VRICsgSU5TVVJBTkNFX0YgKyBBR0UgKyBTRVhfRiArIFJBQ0VfRiArIElOQ09NRV9GICsgVV9SX0YgKwogICAgICAgICAgICAgICAgICAgICAgRkFDSUxJVFlfVFlQRV9GICsgRkFDSUxJVFlfTE9DQVRJT05fRiArIEVEVUNBVElPTl9GLAogICAgICAgICAgICAgICAgICAgICBkYXRhID0gZGF0YSkKbW9kZWxfb25lICU+JSBzdW1tYXJ5KCkKCgpgYGAKCiMjI1N1bW1hcnkgb2YgTW9kZWwKCmBgYHtyfQptb2RlbF9vbmUgJT4lCiAgICAgICAgdGlkeSguLCBleHBvbmVudGlhdGUgPSBUUlVFKSAlPiUKICAgICAgICBzZWxlY3QodGVybSwgZXN0aW1hdGUsIGNvbmYubG93LCBjb25mLmhpZ2gsIHAudmFsdWUpICU+JQogICAgICAgIHJlbmFtZShWYXJpYWJsZSA9IHRlcm0sCiAgICAgICAgICAgICAgIEhhemFyZF9SYXRpbyA9IGVzdGltYXRlKSAlPiUKICAgICAgICB0YmxfZGYgJT4lCiAgICAgICAgcHJpbnQobiA9IG5yb3coLikpCgpgYGAKCiMgUHJlZGljdGlvbiBMb2dpc3RpYyBSZWdyZXNzaW9uIE1vZGVscwoKIyMgU3VyZ2VyeQpgYGB7cn0KCm5vX1VrbnMgPC0gZGF0YSAlPiUKICBmaWx0ZXIoU1VSR0VSWV9ZTiAhPSAiVWtuIikgJT4lIAogIGRyb3BsZXZlbHMoKSAlPiUgCiAgbXV0YXRlKFNVUkdFUllfWU4gPSBhcy5sb2dpY2FsKFNVUkdFUllfWU4pKQoKZml0X3N1cmcgPC0gZ2xtKFNVUkdfVEYgfiBBR0VfRiArIFNFWF9GICsgUkFDRV9GICsgSU5DT01FX0YgKyBVX1JfRiArCiAgICAgICAgICAgICAgICAgICAgICBGQUNJTElUWV9UWVBFX0YgKyBGQUNJTElUWV9MT0NBVElPTl9GICsgRURVQ0FUSU9OX0YgKyBFWFBOX0dST1VQLAogICBkYXRhID0gbm9fVWtucykKCnN1bW1hcnkoZml0X3N1cmcpCgpleHAoY2JpbmQoIk9kZHMgcmF0aW8iID0gY29lZihmaXRfc3VyZyksIGNvbmZpbnQuZGVmYXVsdChmaXRfc3VyZywgbGV2ZWwgPSAwLjk1KSkpCmBgYAoKIyMgTWV0YXN0YXNpcyBhdCBUaW1lIG9mIERpYWdub3NpcwpgYGB7cn0KIyBsaW1pdCB0byB0aG9zZSBjYXNlcyB3aGVyZSBkYXRhIGFib3V0IGV4cGFuc2lvbiBzdGF0dXMgaXMgYXZhaWxhYmxlICg+IEFnZSAzOSwgbm9uLWFtYmlndW91cyBzdGF0dXMgc3RhdGVzKQoKZml0X21ldHMgPC0gZ2xtKG1ldHNfYXRfZHhfRiB+IEFHRV9GICsgU0VYX0YgKyBSQUNFX0YgKyBJTkNPTUVfRiArIFVfUl9GICsKICAgICAgICAgICAgICAgICAgICAgIEZBQ0lMSVRZX1RZUEVfRiArIEZBQ0lMSVRZX0xPQ0FUSU9OX0YgKyBFRFVDQVRJT05fRiArIEVYUE5fR1JPVVAsCiAgIGRhdGEgPSBub19FeGNsdWRlcykKCnN1bW1hcnkoZml0X21ldHMpCgpleHAoY2JpbmQoIk9kZHMgcmF0aW8iID0gY29lZihmaXRfbWV0cyksIGNvbmZpbnQuZGVmYXVsdChmaXRfc3VyZywgbGV2ZWwgPSAwLjk1KSkpCmBgYAo=